@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.\[email\:console\]{email:console}}:root{--font-sans:var(--font-google-sans,"Inter"), "Avenir Next", "Segoe UI", Arial, sans-serif;--font-geist-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--ink:#283618;--ink-2:#4d5a2e;--muted:#4d5a2e;--line:#e7e3c3;--cream:#fefae0;--paper:#fff;--sage:#606c38;--sage-dark:#4a5329;--sage-pale:#e7e3c3;--sand:#dda15e;--clay:#dda15e;--danger:#bc6c25;--ink-rgb:40,54,24;--ink-2-rgb:77,90,46;--paper-rgb:255,255,255;--tier-guest-bg:#f1f5f9;--tier-guest-fg:#334155;--tier-guest-border:#cbd5e1;--tier-member-bg:#facc15;--tier-member-fg:#713f12;--tier-member-border:#eab308;--success:#10b981;--attention:#b3261e;--attention-bg:#fdecea;--warning:#b45309;--radius-lg:22px;--radius-md:14px;--radius-sm:10px;--radius-pill:999px}[data-theme=olive-grove]{--ink:#283618;--ink-2:#4d5a2e;--muted:#4d5a2e;--line:#e7e3c3;--cream:#fefae0;--paper:#fff;--sage:#606c38;--sage-dark:#4a5329;--sage-pale:#e7e3c3;--sand:#dda15e;--clay:#dda15e;--danger:#bc6c25;--ink-rgb:40,54,24;--ink-2-rgb:77,90,46;--paper-rgb:255,255,255}[data-theme=harbor]{--ink:#0d1321;--ink-2:#1d2d44;--muted:#1d2d44;--line:#dfe4ec;--cream:#f0ebd8;--paper:#fff;--sage:#3e5c76;--sage-dark:#2c4258;--sage-pale:#dfe4ec;--sand:#748cab;--clay:#748cab;--danger:#1d2d44;--ink-rgb:13,19,33;--ink-2-rgb:29,45,68;--paper-rgb:255,255,255}[data-theme=sandstone]{--ink:#212529;--ink-2:#5c636b;--muted:#5c636b;--line:#dee2e6;--cream:#e9ecef;--paper:#f8f9fa;--sage:#495057;--sage-dark:#343a40;--sage-pale:#e9ecef;--sand:#ced4da;--clay:#ced4da;--danger:#b02a37;--ink-rgb:33,37,41;--ink-2-rgb:92,99,107;--paper-rgb:248,249,250}[data-theme=sage-cream]{--ink:#43391f;--ink-2:#6e5a34;--muted:#6e5a34;--line:#e9edc9;--cream:#fefae0;--paper:#fff;--sage:#7f5a34;--sage-dark:#664826;--sage-pale:#e9edc9;--sand:#d4a373;--clay:#d4a373;--danger:#a0472a;--ink-rgb:67,57,31;--ink-2-rgb:110,90,52;--paper-rgb:255,255,255}[data-theme=woodland]{--ink:#333d29;--ink-2:#414833;--muted:#414833;--line:#c2c5aa;--cream:#eaebe1;--paper:#eaebe1;--sage:#656d4a;--sage-dark:#582f0e;--sage-pale:#c2c5aa;--sand:#b6ad90;--clay:#b6ad90;--danger:#9e4a33;--ink-rgb:51,61,41;--ink-2-rgb:65,72,51;--paper-rgb:234,235,225}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}button,input,select,textarea{font:inherit}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(var(--ink-2-rgb),.28);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--sage);letter-spacing:.16em;margin:0 0 13px;font-size:11px;font-weight:750;line-height:1}.brand{letter-spacing:-.04em;align-items:center;gap:10px;font-size:21px;font-weight:700;display:inline-flex}.brand--inverse{color:#fff}.brand-mark{object-fit:contain;vertical-align:middle;width:27px;height:27px;display:inline-block}.public-header{border-bottom:1px solid var(--line);background:rgba(var(--paper-rgb),.94);z-index:30;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);align-items:center;height:78px;padding:0 clamp(24px,5.5vw,88px);display:flex;position:sticky;top:0}.public-header nav{gap:34px;margin-left:70px;font-size:14px;display:flex}.public-header nav a{transition:color .2s}.public-header nav a:hover{color:var(--sage)}.header-actions{align-items:center;gap:18px;margin-left:auto;display:flex}.language-button,.text-button{cursor:pointer;background:0 0;border:0;font-size:13px}.language-button{border-right:1px solid var(--line);color:var(--muted);padding-right:18px}.lang-toggle{align-items:center;gap:6px;font-size:12px;font-weight:650;line-height:1;display:inline-flex}.lang-toggle button{cursor:pointer;font:inherit;color:var(--muted);letter-spacing:.02em;background:0 0;border:0;padding:2px 3px}.lang-toggle button:hover{color:var(--ink)}.lang-toggle button.active{color:var(--ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.lang-toggle span{color:var(--line)}.admin-topbar .lang-toggle button{font-size:11px}.dark-button,.primary-action,.admin-primary{background:var(--ink);color:#fff;cursor:pointer;border:0;justify-content:center;align-items:center;font-weight:650;transition:background .2s,transform .2s;display:inline-flex}.dark-button{border-radius:2px;min-height:42px;padding:0 19px;font-size:13px}.dark-button:hover,.primary-action:hover,.admin-primary:hover{background:var(--sage-dark)}.market-hero{background:var(--cream);grid-template-columns:55% 45%;min-height:680px;display:grid;overflow:hidden}.market-hero__copy{z-index:2;padding:108px clamp(40px,7.5vw,120px) 80px}.market-hero h1{letter-spacing:-.065em;margin:0 0 35px;font-family:Georgia,Times New Roman,serif;font-size:clamp(62px,7.2vw,108px);font-weight:400;line-height:.88}.market-hero__lede{max-width:570px;color:var(--ink-2);margin:0 0 35px;font-size:18px;line-height:1.65}.search-box{border:1px solid var(--sand);max-width:650px;height:62px;box-shadow:0 14px 38px rgba(var(--ink-rgb),.08);background:#fff;align-items:center;padding:6px;display:flex}.search-box input{min-width:100px;height:100%;color:var(--ink);border:0;outline:0;flex:1;padding:0 15px}.search-box input::placeholder{color:var(--ink-2)}.search-box button{background:var(--sage);color:#fff;cursor:pointer;border:0;height:100%;padding:0 25px;font-weight:650}.search-mark{border:1.8px solid var(--muted);border-radius:50%;flex:none;width:17px;height:17px;margin-left:16px;position:relative}.search-mark:after{content:"";background:var(--muted);width:7px;height:1.8px;position:absolute;bottom:-4px;right:-5px;transform:rotate(45deg)}.trust-row{color:var(--muted);align-items:center;gap:13px;margin-top:24px;font-size:12px;display:flex}.trust-row i{background:var(--sage);border-radius:50%;width:3px;height:3px}.market-hero__visual{background:var(--sage);background-image:linear-gradient(135deg, rgba(var(--ink-rgb),.75), rgba(var(--paper-rgb),.2)), linear-gradient(25deg, var(--sand) 0 22%, transparent 22% 100%);min-height:680px;position:relative;overflow:hidden}.market-hero__visual:before{content:"";background:linear-gradient(150deg, var(--paper), var(--sage));width:68%;height:74%;box-shadow:inset 0 0 0 15px #ffffff29, 0 30px 80px rgba(var(--ink-rgb),.28);border-radius:46% 46% 8% 8%;position:absolute;top:11%;left:17%}.market-hero__visual:after{content:"";background:var(--ink);width:46%;height:32%;box-shadow:0 14px 0 var(--sand), 0 34px 30px rgba(var(--ink-rgb),.28);border-radius:4px 4px 44% 44%;position:absolute;bottom:9%;left:29%;transform:perspective(400px)rotateX(12deg)}.hero-orbit{z-index:2;border:2px solid rgba(var(--paper-rgb),.5);border-radius:50%;position:absolute}.hero-orbit--one{width:330px;height:330px;top:-80px;right:-110px}.hero-orbit--two{width:240px;height:240px;bottom:20px;left:-110px}.hero-card{z-index:5;background:rgba(var(--paper-rgb),.96);width:278px;box-shadow:0 16px 45px rgba(var(--ink-rgb),.18);flex-direction:column;gap:6px;padding:22px 24px;display:flex;position:absolute;bottom:75px;left:-45px}.hero-card__label{color:var(--sage);letter-spacing:.14em;font-size:9px;font-weight:750}.hero-card strong{font-family:Georgia,serif;font-size:22px;font-weight:400}.hero-card>span:last-child{color:var(--muted);font-size:12px}.market-section{padding:110px clamp(24px,6vw,96px) 120px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:38px;display:flex}.section-heading h2,.how-section h2{letter-spacing:-.04em;margin:0;font-family:Georgia,serif;font-size:clamp(37px,4vw,55px);font-weight:400}.section-heading>a{color:var(--sage);border-bottom:1px solid var(--sage);padding-bottom:7px;font-size:14px;font-weight:650}.shop-grid{grid-template-columns:repeat(4,1fr);gap:22px;display:grid}.shop-card{min-width:0;transition:transform .25s}.shop-card:hover{transform:translateY(-5px)}.shop-card__image{background:var(--sage);height:270px;position:relative;overflow:hidden}.shop-card__image:before,.shop-card__image:after{content:"";position:absolute}.shop-card__image:before{background:rgba(var(--paper-rgb),.58);border-radius:50% 50% 5px 5px;width:58%;height:72%;top:15%;left:21%;box-shadow:inset 0 0 0 8px #ffffff2e}.shop-card__image:after{background:rgba(var(--ink-rgb),.75);border-radius:50% 50% 0 0;width:45%;height:36%;bottom:-10%;left:27%}.shop-card__image--2{background:var(--sand)}.shop-card__image--2:before{background:var(--paper);border-radius:50%;width:72%;height:22%;top:42%;left:14%}.shop-card__image--2:after{background:var(--ink-2);width:26%;height:70%;box-shadow:175px 15px 0 var(--ink-2);border-radius:48% 48% 0 0;bottom:0;left:10%}.shop-card__image--3{background:var(--sand)}.shop-card__image--3:before{background:var(--paper);width:48%;height:80%;box-shadow:15px 10px 35px rgba(var(--ink-rgb),.18);border-radius:4px;top:10%;left:27%;transform:rotate(5deg)}.shop-card__image--3:after{background:var(--sage);border-radius:50%;width:130px;height:130px;bottom:12%;left:34%}.shop-card__image--4{background:var(--ink-2)}.shop-card__image--4:before{border:8px solid var(--sand);background:var(--ink);border-radius:50%;width:65%;height:65%;top:18%;left:18%}.shop-card__image--4:after{background:var(--sand);width:5px;height:120px;box-shadow:-35px 15px 0 var(--sand), 35px 15px 0 var(--sand);bottom:0;left:49%}.tier-pill,.availability-pill{z-index:3;letter-spacing:.1em;background:rgba(var(--paper-rgb),.92);padding:7px 10px;font-size:9px;font-weight:750;position:absolute;top:13px}.tier-pill{color:var(--sage);left:13px}.availability-pill{color:var(--ink);right:13px}.shop-card__body{padding:18px 2px 4px}.shop-card__body>div:first-child{justify-content:space-between;align-items:start;gap:10px;display:flex}.shop-card h3{margin:0;font-family:Georgia,serif;font-size:21px;font-weight:400}.rating{white-space:nowrap;color:var(--sage);font-size:11px;font-weight:650}.shop-card p{color:var(--muted);margin:7px 0 16px;font-size:13px}.shop-card__meta{border-top:1px solid var(--line);color:var(--ink-2);justify-content:space-between;padding-top:13px;font-size:12px;display:flex}.how-section{background:var(--sage-pale);grid-template-columns:.8fr 1.2fr;gap:80px;padding:100px clamp(24px,8vw,130px);display:grid}.how-list{margin:0;padding:0;list-style:none}.how-list li{border-bottom:1px solid rgba(var(--ink-2-rgb),.2);grid-template-columns:45px 1fr;gap:22px;padding:23px 0;display:grid}.how-list li>span{color:var(--sage);font-family:var(--font-geist-mono);font-size:11px}.how-list strong{font-size:17px}.how-list p{color:var(--muted);margin:7px 0 0;font-size:14px;line-height:1.6}.site-footer{background:var(--ink);color:var(--sand);grid-template-columns:1fr 1fr auto;align-items:start;gap:30px;padding:65px clamp(24px,6vw,96px) 35px;display:grid}.site-footer>p{color:#fff;margin:5px 0;font-family:Georgia,serif;font-size:20px}.site-footer>div{gap:25px;font-size:13px;display:flex}.site-footer>span{border-top:1px solid #ffffff26;grid-column:1/-1;margin-top:30px;padding-top:25px;font-size:11px}.shop-page{background:var(--paper);min-height:100vh;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.shop-page.group-landing{padding-bottom:0}.shop-header{background:var(--paper);border-bottom:1px solid var(--line);align-items:center;height:68px;padding:0 clamp(20px,5vw,76px);display:flex}.shop-header__actions{color:var(--muted);align-items:center;gap:8px;margin-left:auto;font-size:12px;display:flex}.shop-header__actions strong{color:var(--ink)}.avatar{background:var(--sage-pale);width:34px;height:34px;color:var(--sage);cursor:pointer;border:0;border-radius:50%;margin-left:7px;font-weight:700}.shop-account,.shop-header__label{margin-left:auto}.shop-header__right{align-items:center;gap:14px;margin-left:auto;display:flex}.shop-header__right .shop-account,.shop-header__right .shop-header__label{margin-left:0}.shop-header__label{color:var(--muted);font-size:12px}.shop-account{align-items:center;display:flex;position:relative}.shop-account__trigger{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--paper);color:var(--ink);cursor:pointer;align-items:center;gap:8px;padding:5px 12px 5px 5px;font-size:12px;display:inline-flex}.shop-account__trigger:hover{border-color:var(--sand)}.shop-account__trigger:disabled{border-color:var(--line);cursor:default;opacity:.72}.shop-account__trigger--unresolved .shop-account__name{background:var(--line);border-radius:4px;width:72px;height:8px}.shop-account__avatar{background:var(--sage-pale);width:34px;height:34px;color:var(--sage);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid;position:relative;overflow:hidden}.shop-account__avatar img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.shop-account__name{font-family:var(--font-sans);color:var(--ink);font-weight:650}.shop-account__caret{color:var(--muted);font-size:10px}.shop-account__scrim{z-index:110;cursor:default;background:0 0;border:0;position:fixed;inset:0}.shop-account__menu{z-index:111;background:var(--paper);border:1px solid var(--line);min-width:170px;box-shadow:0 18px 50px rgba(var(--ink-rgb),.18);padding:6px;position:absolute;top:calc(100% + 8px);right:0}.shop-account__menu button{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:9px 11px;font-size:12px}.shop-account__menu button:hover{background:var(--sage-pale)}.shop-account__trigger--wallet{gap:7px;min-height:46px;padding:5px 13px}.shop-account__trigger--wallet .nav-icon{opacity:1;width:16px;height:16px;color:var(--sage);transform:none}.shop-account__balance{font-family:var(--font-sans);color:var(--ink);white-space:nowrap;font-weight:650}.shop-bottom-nav{left:50%;bottom:calc(12px + env(safe-area-inset-bottom));z-index:115;border:1px solid var(--line);border-radius:var(--radius-pill);background:rgba(var(--paper-rgb),.97);width:min(430px,100vw - 24px);box-shadow:0 14px 40px rgba(var(--ink-rgb),.22);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);grid-template-columns:repeat(3,1fr);gap:2px;padding:7px;display:grid;position:fixed;transform:translate(-50%)}.shop-bottom-nav__item{border-radius:var(--radius-pill);min-height:50px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:6px 2px;font-size:10px;font-weight:650;line-height:1.2;transition:background .2s,color .2s;display:flex}.shop-bottom-nav__item:hover:not(:disabled){color:var(--ink);background:var(--sage-pale)}.shop-bottom-nav__item:disabled{opacity:.4;cursor:not-allowed}.shop-bottom-nav__item--active{color:var(--sage);background:var(--sage-pale)}.shop-bottom-nav__item .nav-icon{opacity:1;width:18px;height:18px;transform:none}.shop-bottom-nav__avatar{object-fit:cover;border-radius:50%;flex:none;width:26px;height:26px}.shop-bottom-nav__item>span{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.shop-view{width:min(560px,100% - 28px);margin:22px auto 0;padding:30px;position:relative}.mybookings-head{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.mybookings-head h2{margin:0;font-family:Georgia,serif;font-size:30px;font-weight:400}.mybookings-tabs{border-bottom:1px solid var(--line);gap:24px;margin:0 0 18px;display:flex}.mybookings-tab{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:0 0 10px;font-size:11px;font-weight:600;transition:color .2s,border-color .2s}.mybookings-tab:hover{color:var(--ink)}.mybookings-tab--active{color:var(--ink);border-bottom-color:var(--sage)}.mybookings-close{z-index:2;width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:26px;line-height:1;display:grid;position:absolute;top:14px;right:14px}.mybookings-close:hover{color:var(--ink)}.mybookings-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.mybooking-row{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:14px 0;display:grid}.mybooking-row:first-child{border-top:0}.mybooking-main{flex-direction:column;gap:5px;min-width:0;display:flex}.mybooking-main strong{font-size:13px}.mybooking-main small{color:var(--muted);font-size:11px}.mybooking-amount{white-space:nowrap;font-size:12px;font-weight:650}.mybooking-group-hint{color:var(--muted);font-size:10px;font-weight:400}.mybooking-status{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;width:max-content;padding:4px 9px;font-size:9px;font-weight:700}.mybooking-status--positive{color:var(--sage);background:var(--sage-pale)}.mybooking-status--pending{color:var(--ink);background:var(--line)}.mybooking-status--muted{color:var(--muted);background:var(--paper);border:1px solid var(--line)}.mybooking-pay{border-radius:var(--radius-pill);background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;cursor:pointer;border:0;width:max-content;padding:6px 14px;font-size:9px;font-weight:700;transition:background .2s}.mybooking-pay:hover{background:var(--sage-dark)}.mybookings-empty{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);min-height:100px;color:var(--ink-2);place-items:center;font-size:12px;display:grid}.mybookings-cancel-note{color:var(--muted);margin:14px 0 0;font-size:10px;line-height:1.6}.mybookings-cancel-outcome{border-radius:var(--radius-md);background:var(--sage-pale);color:var(--ink);margin:14px 0 0;padding:10px 12px;font-size:11px}.mybooking-instructor{color:var(--sage);font-weight:650}.mybooking-cancel{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;align-items:center;gap:10px;display:flex}.mybooking-cancel__confirm{color:var(--ink);text-align:right;flex:100%;margin:0;font-size:11px;line-height:1.5}.mybooking-cancel__start,.mybooking-cancel__no{cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:650}.mybooking-cancel__start{color:var(--attention)}.mybooking-cancel__start:hover{color:var(--attention);text-decoration:underline}.mybooking-cancel__no{color:var(--sage)}.mybooking-cancel__no:hover{color:var(--ink)}.mybooking-cancel__yes{border-radius:var(--radius-pill);background:var(--danger);color:#fff;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;border:0;padding:6px 14px;font-size:9px;font-weight:700}.mybooking-cancel__yes:disabled,.mybooking-cancel__no:disabled{opacity:.5;cursor:not-allowed}.mybooking-cancel__closed{color:var(--muted);font-size:10px}@media (max-width:560px){.shop-view{margin-top:14px;padding:20px 18px}.mybooking-row{grid-template-columns:1fr auto}.mybooking-amount{grid-column:1/-1}}.wallet-balance{border-radius:var(--radius-lg);background:var(--ink);color:#fff;flex-direction:column;gap:6px;padding:20px 22px;display:flex}.wallet-balance>span{color:#ffffffe0;letter-spacing:.12em;font-size:9px}.wallet-balance>strong{font-family:var(--font-sans);color:#fff;font-size:32px;font-weight:600}.wallet-balance>small{color:#ffffffe0;font-size:10px}.wallet-topup{flex-direction:column;margin:16px 0 0;display:flex}.wallet-topup__field{flex-direction:column;gap:7px;display:flex}.wallet-topup__field>span{color:var(--ink-2);font-size:11px;font-weight:650}.wallet-topup input{border:1px solid var(--sand);border-radius:var(--radius-md);background:var(--paper);height:46px;color:var(--ink);font:inherit;padding:0 13px;font-size:13px}.wallet-topup input:focus-visible{border-color:var(--sage)}.wallet-topup__presets{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.wallet-topup__presets-label{color:var(--ink-2);flex:0 0 100%;font-size:11px;font-weight:650}.wallet-topup__preset{border:1px solid var(--sand);border-radius:var(--radius-pill);background:var(--paper);min-height:36px;color:var(--ink);font:inherit;cursor:pointer;padding:0 16px;font-size:12px;font-weight:650;transition:border-color .2s}.wallet-topup__preset:hover:not(:disabled){border-color:var(--sage)}.wallet-topup__preset:disabled{opacity:.5;cursor:not-allowed}.wallet-topup .primary-action{min-height:48px;margin-top:14px}.wallet-history-title{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:26px 0 10px;font-size:9px}.wallet-history{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.wallet-movement{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 0;display:grid}.wallet-movement:first-child{border-top:0}.wallet-movement__main{flex-direction:column;gap:4px;min-width:0;display:flex}.wallet-movement__main strong{font-size:12px}.wallet-movement__main small{color:var(--muted);overflow-wrap:anywhere;font-size:10px}.wallet-movement__amount{color:var(--sage);white-space:nowrap;font-size:12px;font-weight:650}.wallet-movement__amount--out{color:var(--danger)}.wallet-movement__pending{border-radius:var(--radius-pill);background:var(--line);color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em;vertical-align:middle;margin-left:8px;padding:2px 7px;font-size:8px;font-weight:700}.wallet-movement--pending .wallet-movement__amount{color:var(--muted)}.shop-banner{background:var(--ink);color:#fff}.shop-banner__art{background:linear-gradient(100deg, var(--ink), var(--ink-2));height:175px;position:relative;overflow:hidden}.shop-banner__art:before{content:"";background-image:repeating-linear-gradient(90deg,#0000 0 75px,#ffffff09 76px 77px);position:absolute;inset:0}.shop-banner__art>span{letter-spacing:.32em;color:#fff;font-size:11px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.arch{border:18px solid rgba(var(--paper-rgb),.4);border-radius:50% 50% 0 0;width:220px;height:210px;position:absolute;top:24px}.arch--left{left:12%}.arch--right{right:10%}.shop-banner__details{grid-template-columns:100px 1fr auto;align-items:center;gap:30px;max-width:1180px;min-height:170px;margin:auto;padding:25px 30px;display:grid}.shop-badge{background:var(--paper);width:92px;height:92px;color:var(--ink);border:1px solid #ffffff40;border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:27px;display:grid}.shop-banner__details h1{margin:0 0 6px;font-family:Georgia,serif;font-size:35px;font-weight:400}.shop-banner__details h1.shop-banner__name--small{font-size:27px}.shop-banner__details h1.shop-banner__name--large{font-size:46px}.shop-banner__details p:last-child{color:#fff;margin:0;font-size:13px}.shop-banner__details .eyebrow{color:#fff}.shop-banner__details dl{gap:40px;margin:0;display:flex}.shop-banner__details dt{color:#fff;text-transform:uppercase;letter-spacing:.11em;margin-bottom:6px;font-size:9px}.shop-banner__details dd{margin:0;font-size:12px}.booking-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:45px;max-width:1160px;margin:0 auto;padding:54px 30px 100px;display:grid}.booking-layout--single{grid-template-columns:minmax(0,1fr)}.booking-progress{align-items:center;margin-bottom:42px;display:flex}.booking-progress button{color:var(--sage);white-space:nowrap;background:0 0;border:0;align-items:center;gap:9px;padding:0;font-size:12px;display:flex}.booking-progress button:not(:disabled){cursor:pointer}.booking-progress button span{border:1px solid var(--sage);border-radius:50%;place-items:center;width:27px;height:27px;font-size:10px;display:grid}.booking-progress button.active{color:var(--ink);font-weight:650}.booking-progress button.active span{background:var(--sage);border-color:var(--sage);color:#fff}.booking-progress button.complete span{border-color:var(--sage);color:var(--sage)}.booking-progress>i{background:var(--sand);flex:1;height:1px;margin:0 15px}.booking-main,.booking-panel{width:100%;min-width:0}.booking-panel{max-width:720px}.shop-empty-services{border:1px solid var(--sand);border-radius:var(--radius-lg);background:var(--paper);max-width:720px;padding:44px}.shop-empty-services h2{letter-spacing:-.025em;margin:0 0 12px;font-family:Georgia,serif;font-size:36px;font-weight:400}.shop-empty-services>p:last-child{max-width:540px;color:var(--muted);margin:0;font-size:14px;line-height:1.65}.group-landing__body{max-width:1180px;margin:0 auto;padding:44px clamp(20px,5vw,76px) 90px}.group-landing__lede{color:var(--ink);margin:0 0 24px;font-family:Georgia,serif;font-size:22px;font-weight:400}.group-store-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;display:grid}.group-store-card{border:1px solid var(--sand);border-radius:var(--radius-lg);background:var(--paper);color:var(--ink);grid-template-columns:64px 1fr;align-items:center;gap:18px;padding:18px;text-decoration:none;transition:border .2s,box-shadow .2s,transform .2s;display:grid}.group-store-card:hover{border-color:var(--sage);box-shadow:inset 0 0 0 1px var(--sage);transform:translateY(-2px)}.group-store-card__badge{background:var(--sage-pale);width:64px;height:64px;color:var(--sage);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:22px;display:grid;position:relative;overflow:hidden}.group-store-card__badge img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.group-store-card__body{flex-direction:column;gap:5px;min-width:0;display:flex}.group-store-card__body strong{font-family:Georgia,serif;font-size:20px;font-weight:400}.group-store-card__body small{color:var(--muted);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.group-store-card__cta{color:var(--sage);margin-top:4px;font-size:12px;font-weight:650}.panel-heading{margin-bottom:29px}.panel-heading h2{letter-spacing:-.035em;margin:0 0 8px;font-family:Georgia,serif;font-size:39px;font-weight:400}.panel-heading>p:last-child{color:var(--muted);margin:0;font-size:14px}.service-list{flex-direction:column;gap:10px;display:flex}.service-option{border:1px solid var(--sand);border-radius:var(--radius-lg);background:var(--paper);text-align:left;cursor:pointer;grid-template-columns:83px 1fr auto 18px;align-items:center;gap:18px;width:100%;min-height:112px;padding:13px 20px 13px 13px;transition:border .2s,box-shadow .2s;display:grid}.service-option:hover{border-color:var(--sage)}.service-option.selected{border-color:var(--sage);box-shadow:inset 0 0 0 1px var(--sage)}.service-swatch{border-radius:var(--radius-md);background:var(--sage);width:83px;height:83px;position:relative;overflow:hidden}.service-swatch:before{content:"";background:#ffffff59;border-radius:50% 50% 5% 5%;width:55px;height:65px;position:absolute;top:12px;left:14px}.service-swatch i{background:var(--ink);border-radius:50%;width:36px;height:36px;position:absolute;bottom:-5px;left:24px}.service-swatch--clay{background:var(--sage)}.service-swatch--clay i{background:var(--ink-2)}.service-swatch--sand{background:var(--sand)}.service-swatch--sand i,.service-swatch--ink{background:var(--ink-2)}.service-swatch--ink i{background:var(--ink)}.service-swatch img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.service-swatch--photo:before{display:none}.shop-logo-fallback,.summary-shop>span.shop-logo-fallback{background:var(--sage);position:relative;overflow:hidden}.shop-logo-fallback:before{content:"";background:#ffffff59;border-radius:50% 50% 5% 5%;width:66%;height:78%;position:absolute;top:14%;left:17%}.shop-logo-fallback>i{background:var(--ink);border-radius:50%;width:43%;height:43%;position:absolute;bottom:-6%;left:29%}.service-option__copy{flex-direction:column;min-width:0;display:flex}.service-option__copy strong{font-family:Georgia,serif;font-size:18px;font-weight:400}.service-option__copy small{color:var(--muted);white-space:pre-line;overflow-wrap:anywhere;margin:5px 0 8px;font-size:11px}.service-option__copy>span{color:var(--sage);font-size:10px;font-weight:650}.service-price{font-size:14px;font-weight:650}.radio{border:1px solid var(--sage);border-radius:50%;width:16px;height:16px}.service-option.selected .radio{border:5px solid var(--sage)}.instructor-note{color:var(--muted);margin:-18px 0 20px;font-size:12px;line-height:1.5}.instructor-list{flex-direction:column;gap:11px;display:flex}.instructor-option{border:1px solid var(--sand);border-radius:var(--radius-lg);background:var(--paper);text-align:left;cursor:pointer;grid-template-columns:62px 1fr 18px;align-items:center;gap:16px;width:100%;min-height:88px;padding:13px 20px 13px 13px;transition:border .2s,box-shadow .2s;display:grid}.instructor-option:hover{border-color:var(--sage)}.instructor-option.selected{border-color:var(--sage);box-shadow:inset 0 0 0 1px var(--sage)}.instructor-option.selected .radio{border:5px solid var(--sage)}.instructor-photo{background:var(--sage);border-radius:50%;width:62px;height:62px;position:relative;overflow:hidden}.instructor-photo>i{background:#ffffff6b;border-radius:50%;width:26px;height:26px;position:absolute;top:12px;left:18px;box-shadow:0 26px 0 -3px #ffffff6b}.instructor-photo img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.instructor-photo--none{background:var(--sage-pale)}.instructor-photo--none>i{background:rgba(var(--ink-2-rgb),.35);box-shadow:0 26px 0 -3px rgba(var(--ink-2-rgb),.35)}.instructor-option__copy{flex-direction:column;gap:5px;min-width:0;display:flex}.instructor-option__copy strong{font-family:Georgia,serif;font-size:17px;font-weight:400}.instructor-option__copy small{color:var(--muted);font-size:11px}.instructor-badge{border-radius:var(--radius-pill);background:var(--sage-pale);width:max-content;max-width:100%;color:var(--sage-dark);letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;font-size:9px;font-weight:700}.instructor-direct-note{color:var(--attention);font-size:11px;font-weight:600;line-height:1.4}.review-instructor-note{color:var(--sage-dark);margin:14px 0 0;font-size:12px;font-weight:600;line-height:1.5}.primary-action{border-radius:var(--radius-pill);gap:12px;width:100%;min-height:54px;margin-top:24px;font-size:13px}.primary-action:disabled{opacity:.5;cursor:not-allowed}.quantity-stepper{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);flex-direction:column;gap:10px;margin-top:24px;padding:14px 18px;display:flex}.quantity-stepper__row{justify-content:space-between;align-items:center;gap:14px;display:flex}.quantity-stepper__label{color:var(--ink-2);font-size:12px;font-weight:650}.quantity-stepper__notice{color:#8a5a00;border-radius:var(--radius-sm);background:#fdf3d0;margin:0;padding:8px 10px;font-size:11px;line-height:1.5}.quantity-stepper__controls{align-items:center;gap:14px;display:flex}.quantity-stepper__controls button{border:1px solid var(--sage);border-radius:var(--radius-pill);background:var(--paper);width:36px;height:36px;color:var(--sage);cursor:pointer;justify-content:center;align-items:center;font-size:18px;line-height:1;transition:border .2s,background .2s,color .2s;display:flex}.quantity-stepper__controls button:hover:not(:disabled){background:var(--sage);color:#fff}.quantity-stepper__controls button:disabled{opacity:.35;cursor:not-allowed}.quantity-stepper__controls strong{text-align:center;font-variant-numeric:tabular-nums;min-width:24px;font-size:16px;font-weight:650}.selection-total{justify-content:space-between;align-items:baseline;gap:14px;margin-top:12px;padding:0 18px;display:flex}.selection-total span{color:var(--muted);font-size:12px}.selection-total strong{font-family:var(--font-sans);font-variant-numeric:tabular-nums;font-size:19px;font-weight:600}.summary-shop{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:15px 0 22px;display:flex}.summary-shop>span{background:var(--sand);border-radius:50%;place-items:center;width:46px;height:46px;font-family:Georgia,serif;font-size:13px;display:grid}.summary-shop div{flex-direction:column;gap:4px;display:flex}.summary-shop strong{font-size:13px}.summary-shop small{color:var(--muted);font-size:10px}.summary-total{justify-content:space-between;align-items:center;padding:20px 0;display:flex}.summary-total span{font-size:12px}.summary-total strong{font-family:var(--font-sans);font-size:25px;font-weight:600}.review-summary{max-width:430px}.review-summary .summary-shop{padding-top:0}.review-summary dl{margin:0}.review-summary dl>div{border-bottom:1px solid var(--line);grid-template-columns:104px 1fr;padding:15px 0;font-size:12px;display:grid}.review-summary dt{color:var(--muted)}.review-summary dd{text-align:right;margin:0;font-weight:600}.review-summary dd small{color:var(--muted);margin-top:3px;font-weight:400;display:block}.review-summary dt small{margin-top:3px;font-size:10px;display:block}.booking-summary{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px 26px;position:sticky;top:30px}.booking-summary .eyebrow{margin-bottom:16px}.booking-summary .summary-shop{padding-top:0}.booking-summary dl{margin:0}.booking-summary dl>div{border-bottom:1px solid var(--line);grid-template-columns:64px 1fr;padding:14px 0;font-size:12px;display:grid}.booking-summary dt{color:var(--muted)}.booking-summary dd{text-align:right;margin:0;font-weight:600}.booking-summary dd small{color:var(--muted);margin-top:3px;font-weight:400;display:block}.review-note{color:var(--muted);margin:18px 0 0;font-size:12px;line-height:1.5}.coupon-entry{max-width:430px;margin:16px 0 0}.coupon-form{align-items:flex-end;gap:10px;display:flex}.coupon-field{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.coupon-field span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px}.coupon-field input{box-sizing:border-box;border:1px solid var(--sand);border-radius:var(--radius-md);width:100%;height:40px;color:var(--ink);font-family:var(--font-geist-mono);text-transform:uppercase;background:#fff;padding:0 12px;font-size:13px}.coupon-field input:disabled{opacity:.55}.coupon-apply{border:1px solid var(--ink);border-radius:var(--radius-md);background:var(--ink);height:40px;color:var(--cream);cursor:pointer;flex:none;padding:0 18px;font-size:11px;font-weight:650}.coupon-apply:disabled{opacity:.45;cursor:default}.coupon-applied{background:var(--sage-pale);border-left:3px solid var(--sage);border-radius:var(--radius-md);flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:12px 14px;display:flex}.coupon-applied__code{font-family:var(--font-geist-mono);color:var(--sage-dark);letter-spacing:.04em;font-size:12px;font-weight:700}.coupon-applied__detail{min-width:0;color:var(--sage-dark);overflow-wrap:anywhere;flex:1;font-size:11px;line-height:1.45}.coupon-applied__amount{color:var(--sage-dark);white-space:nowrap;font-size:12px;font-weight:650}.coupon-remove{color:var(--sage-dark);cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;font-weight:650;text-decoration:underline}.coupon-remove:disabled{opacity:.5;cursor:default}.coupon-applied__partial{color:var(--sage-dark);opacity:.85;flex:0 0 100%;font-size:11px;line-height:1.45}.coupon-error{border-left:3px solid var(--danger);color:var(--ink);margin:10px 0 0;padding-left:11px;font-size:11px;line-height:1.5}.coupon-discount-amount{color:var(--sage-dark)}.summary-total__discounted{flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:10px;display:flex}.summary-total__discounted s{color:var(--muted);font-size:14px}.summary-total__discounted strong{font-family:var(--font-sans);font-size:25px;font-weight:600}.secure-copy{background:var(--sage-pale);color:var(--sage-dark);border-radius:var(--radius-md);align-items:flex-start;gap:9px;margin:0;padding:12px;font-size:10px;line-height:1.45;display:flex}.lock-mark{border:1.5px solid var(--sage);width:10px;height:9px;margin-top:3px;position:relative}.lock-mark:before{content:"";border:1.5px solid var(--sage);border-bottom:0;border-radius:5px 5px 0 0;width:6px;height:6px;position:absolute;top:-7px;left:1px}.back-link,.cancel-hold{color:var(--sage);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.back-link{align-items:center;gap:8px;margin-bottom:25px;font-size:15px;font-weight:650;display:inline-flex}.back-link:before{content:"←";font-size:17px;line-height:1}.date-carousel{align-items:stretch;gap:8px;margin-bottom:32px;display:flex}.date-carousel .date-row{flex:1;margin-bottom:0}.date-row{grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:32px;display:grid}.date-row button{border:1px solid var(--line);background:var(--paper);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;height:60px;display:flex}.date-row button span,.date-row button small{letter-spacing:.1em;color:var(--muted);font-size:8px}.date-row button strong{margin:2px 0;font-family:Georgia,serif;font-size:18px;font-weight:400}.date-row button.selected{border:1.5px solid var(--sage);background:var(--sage-pale)}.date-row button.selected span,.date-row button.selected small{color:var(--sage)}.time-heading{justify-content:space-between;margin-bottom:14px;font-size:12px;display:flex}.time-heading span{color:var(--muted);font-size:10px}.slot-grid{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.slot-grid button{border:1px solid var(--line);background:var(--paper);cursor:pointer;height:47px;font-size:12px}.slot-grid button:hover{border-color:var(--sage)}.slot-grid button.selected{background:var(--sage);color:#fff;border-color:var(--sage)}.slot-grid button:disabled{background:var(--sage-pale);color:var(--muted);border-color:var(--line);cursor:default;opacity:.55}.booking-note{border:1px solid var(--sand);border-radius:var(--radius-md);background:var(--paper);align-items:center;gap:12px;margin-top:21px;padding:14px 16px;display:flex}.booking-note p{color:var(--ink-2);margin:0;font-size:11px}.note-mark{border:1px solid var(--sage);width:18px;height:18px;color:var(--sage);border-radius:50%;flex:none;place-items:center;font-family:Georgia,serif;font-size:11px;display:grid}.hold-banner{background:var(--ink);color:#fff;border-radius:var(--radius-lg);grid-template-columns:1fr auto;align-items:center;margin-bottom:32px;padding:17px 20px;display:grid}.hold-banner span{letter-spacing:.14em;color:#ffffffb8;font-size:9px}.hold-banner strong{font-family:var(--font-sans);letter-spacing:.04em;color:#fff;grid-area:1/2/3;font-size:25px;font-weight:600}.hold-banner p{color:#ffffffb8;margin:4px 0 0;font-size:10px}.payment-method-selector{gap:10px;width:100%;margin:0 0 16px;display:grid}.payment-method-selector--two{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-method-selector--single{grid-template-columns:minmax(0,1fr)}.payment-method-option{appearance:none;box-sizing:border-box;border:1px solid var(--sand);border-radius:var(--radius-lg);background:var(--paper);width:100%;min-width:0;min-height:82px;color:var(--ink-2);font:inherit;text-align:left;cursor:pointer;box-shadow:none;flex-direction:column;justify-content:center;align-items:flex-start;gap:6px;margin:0;padding:15px 46px 15px 17px;line-height:1.35;transition:background .2s,border-color .2s,box-shadow .2s,color .2s;display:flex;position:relative}.payment-method-option:after{content:"";box-sizing:border-box;border:1px solid var(--sage);background:0 0;border-radius:50%;width:16px;height:16px;position:absolute;top:50%;right:17px;transform:translateY(-50%)}.payment-method-option:hover{border-color:var(--sage);background:var(--paper)}.payment-method-option:focus-visible{outline:2px solid var(--sage);outline-offset:2px}.payment-method-option--active{border-color:var(--sage);background:var(--sage-pale);color:var(--ink);box-shadow:inset 0 0 0 1px var(--sage)}.payment-method-option--active:after{border:5px solid var(--sage);background:var(--paper)}.payment-method-option__label{min-width:0;color:inherit;font-size:13px;font-weight:650;line-height:1.35;display:block}.payment-method-option__hint{min-width:0;color:var(--muted);font-size:9px;font-weight:400;line-height:1.45;display:block}.payment-method-option--active .payment-method-option__hint{color:var(--ink-2)}.payment-box{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);grid-template-columns:1fr;display:grid;overflow:hidden}.payment-recipient{border-bottom:1px solid var(--line);background:var(--line);padding:24px}.payment-recipient>span{color:var(--ink-2);letter-spacing:.12em;margin-bottom:8px;font-size:9px;display:block}.payment-recipient>strong{color:var(--ink);font-family:Georgia,serif;font-size:21px;font-weight:400;display:block}.recipient-missing{background:var(--paper);border-left:3px solid var(--sage);color:var(--ink);padding:18px;font-size:11px;line-height:1.5}.payment-details{flex-direction:column;padding:31px;display:flex}.payment-details>span{letter-spacing:.12em;color:var(--muted);font-size:9px}.payment-details>strong{font-family:var(--font-sans);margin:7px 0 20px;font-size:34px;font-weight:600}.payment-details dl{margin:auto 0 0}.payment-details dl div{grid-template-columns:70px 1fr;padding-top:8px;font-size:10px;display:grid}.payment-details dt{color:var(--muted)}.payment-details dd{text-align:right;margin:0}.payment-destination-line{box-sizing:border-box;width:100%;color:var(--ink-2);overflow-wrap:anywhere;word-break:break-word;margin-top:-10px;padding:6px 31px 28px;font-size:clamp(14px,1.2vw,17px);font-weight:600;line-height:1.55;display:block}.payment-meta{border-bottom:1px solid var(--line);flex-direction:column;gap:7px;margin:0;padding:20px 31px;display:flex}.payment-meta>div{grid-template-columns:70px 1fr;font-size:11px;display:grid}.payment-meta dt{color:var(--muted)}.payment-meta dd{text-align:right;color:var(--ink);margin:0}.promptpay-qr{border-top:1px solid var(--line);text-align:center;flex-direction:column;align-items:center;gap:11px;padding:24px 20px;display:flex}.promptpay-qr>span{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);font-size:9px}.promptpay-qr img{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;width:200px;max-width:100%;height:200px;padding:8px}.promptpay-qr>small{color:var(--muted);max-width:260px;font-size:10px;line-height:1.5}.payment-meta__discount dd{color:var(--sage-dark);font-weight:650}.payment-coupon-line{color:var(--sage-dark);overflow-wrap:anywhere;margin:-12px 0 0;font-size:11px;font-weight:600;line-height:1.5;display:block}.slip-upload{border:1px dashed var(--sage);border-radius:var(--radius-md);cursor:pointer;background:#fff9;grid-template-rows:1fr 1fr;grid-template-columns:40px 1fr;align-items:end;column-gap:13px;height:103px;margin-top:14px;padding:23px;display:grid}.slip-upload input{display:none}.upload-mark{border:1px solid var(--sage);border-radius:var(--radius-pill);width:40px;height:40px;color:var(--sage);grid-row:1/3;align-self:center;place-items:center;font-size:20px;display:grid}.slip-upload strong{font-size:12px}.slip-upload small{color:var(--muted);align-self:start;margin-top:4px;font-size:10px}.slip-upload-preview{box-sizing:border-box;object-fit:contain;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);width:100%;max-width:100%;max-height:240px;margin-top:12px;padding:8px;display:block}.cancel-hold{text-align:center;width:100%;margin-top:16px}.payment-method-selector--three{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-wallet{border:1px solid var(--sand);border-radius:var(--radius-md);background:var(--paper);flex-direction:column;gap:8px;margin:16px 0 0;padding:16px 18px;display:flex}.payment-wallet>div{justify-content:space-between;gap:12px;font-size:11px;display:flex}.payment-wallet dt{color:var(--muted)}.payment-wallet dd{margin:0;font-weight:650}.payment-wallet__short dd{color:var(--danger)}.payment-wallet-note{color:var(--muted);text-align:center;margin-top:10px;font-size:11px;line-height:1.5;display:block}.payment-instructor-note{color:var(--sage-dark);overflow-wrap:anywhere;margin-top:-10px;padding:0 31px 26px;font-size:12px;font-weight:600;line-height:1.5;display:block}@media (max-width:420px){.payment-method-selector--two,.payment-method-selector--three{grid-template-columns:minmax(0,1fr)}.payment-method-option{min-height:72px}}.success-view{text-align:center;max-width:650px;margin:0 auto;padding:70px 30px 110px}.success-mark{background:var(--sage);border-radius:50%;place-items:center;width:58px;height:58px;margin:0 auto 26px;display:grid}.success-mark i{border-bottom:2px solid #fff;border-left:2px solid #fff;width:21px;height:10px;transform:rotate(-45deg)translateY(-3px)}.success-view h2{margin:0 0 13px;font-family:Georgia,serif;font-size:45px;font-weight:400}.success-view>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.6}.confirmation-card{text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);max-width:430px;margin:35px auto 25px;padding:25px 30px;position:relative}.confirmation-card>span{color:var(--sage);letter-spacing:.15em;margin-bottom:18px;font-size:9px;display:block}.confirmation-card>strong{font-family:Georgia,serif;font-size:25px;font-weight:400;display:block}.confirmation-card>i{border-top:1px dashed var(--sand);margin:20px -30px;display:block}.confirmation-card dl{margin:0}.confirmation-card dl div{justify-content:space-between;padding:6px 0;font-size:11px;display:flex}.confirmation-card dt{color:var(--muted)}.confirmation-card dd{margin:0;font-weight:600}.success-actions{max-width:430px;margin:auto}.success-actions .primary-action{margin:0 0 16px}.success-actions>a{color:var(--sage);font-size:12px}.shop-page .booking-error,.shop-page .booking-notice,.shop-page .loading-state,.shop-page .empty-slots,.shop-page .auth-error{border-radius:var(--radius-md)}.shop-page .slot-grid button{border-radius:var(--radius-pill)}.shop-page .slot-grid button.slot-with-price{flex-direction:column;justify-content:center;align-items:center;gap:1px;height:auto;min-height:47px;padding:6px 4px;line-height:1.25;display:flex}.shop-page .slot-grid .slot-price{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.shop-page .slot-grid button.selected .slot-price{color:#ffffffd9}.shop-page .date-row button{border-radius:var(--radius-md)}.shop-page .admin-data-state{border-radius:var(--radius-lg)}.shop-page .admin-data-state button{border-radius:var(--radius-pill)}.shop-page .admin-modal{border-radius:var(--radius-lg)}.admin-app{background:var(--paper);zoom:1.5;--admin-zoom:1.5;--admin-row-divider:rgba(var(--ink-rgb),.12);--filter-accent:linear-gradient(90deg,var(--sage) 0%,var(--sand) 100%);min-height:100vh}@supports (color:color-mix(in lab, red, red)){.admin-app{--filter-accent:linear-gradient(90deg,var(--sage) 0%,color-mix(in srgb,var(--sand) 45%,var(--ink)) 100%)}}.admin-app{--filter-ring:0 0 0 4px rgba(var(--ink-2-rgb),.15);--filter-rest:0 1px 2px rgba(var(--ink-rgb),.05);--filter-hover:0 8px 24px rgba(var(--ink-rgb),.09);--filter-lift:0 10px 26px rgba(var(--ink-rgb),.14)}.admin-app :is(.view-shop,.daterange-clear,.admin-primary,.secondary-action,.table-export,.table-pager button,.admin-data-state button,.manual-slip-button,.manual-cancel-booking,.logs-load-more button){border-radius:11px;transition:border-color .18s,box-shadow .18s,background .2s,color .2s,transform .18s}.admin-app :is(.view-shop,.daterange-clear,.secondary-action,.table-export,.table-pager button,.manual-slip-button,.manual-cancel-booking,.logs-load-more button),.admin-app :is(.admin-primary,.admin-data-state button){box-shadow:var(--filter-rest)}.admin-app :is(.view-shop,.daterange-clear,.secondary-action,.table-export,.table-pager button,.manual-slip-button,.manual-cancel-booking,.logs-load-more button):hover:not(:disabled){border-color:rgba(var(--ink-2-rgb),.34);box-shadow:var(--filter-hover)}.admin-app :is(.admin-primary,.admin-data-state button):hover:not(:disabled){box-shadow:var(--filter-hover)}.admin-app :is(.view-shop,.daterange-clear,.secondary-action,.table-export,.table-pager button,.manual-slip-button,.manual-cancel-booking,.logs-load-more button,.admin-primary,.admin-data-state button):focus-visible{outline-offset:2px;border-color:var(--sage);box-shadow:var(--filter-ring);outline:2px solid #0000}.admin-app .daterange-clear{border:1px solid var(--sand);height:30px;color:var(--ink);cursor:pointer;background:#fff;align-items:center;padding:0 12px;font-family:inherit;font-size:11px;font-weight:600;display:inline-flex}.admin-app :is(.payment-row,.log-row,.appointment,.performance-table .table-row,.rank-list>div,.resource-bookings>div){border-bottom-color:var(--admin-row-divider)}.admin-sidebar{background:var(--ink);width:245px;color:var(--sand);z-index:30;flex-direction:column;padding:0 17px;display:flex;position:fixed;inset:0 auto 0 0}.admin-sidebar--shop,.admin-sidebar--shop .shop-initial,.admin-sidebar--shop .current-shop small,.admin-sidebar--shop .nav-section,.admin-sidebar--shop .admin-profile small{color:#fff}.admin-sidebar__top{border-bottom:1px solid #ffffff1a;flex:none;align-items:center;height:68px;padding:0 5px;display:flex}.admin-sidebar .brand{color:#fff}.admin-label{letter-spacing:.15em;border:1px solid #ffffff40;margin:2px 0 0 8px;padding:4px 5px;font-size:7px;font-weight:750}.admin-sidebar__close{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;place-items:center;width:26px;height:26px;margin-left:auto;font-size:17px;line-height:1;transition:background .2s;display:grid}.admin-sidebar__close:hover{background:#ffffff24}.admin-sidebar__top .brand{min-width:0}.admin-sidebar__top .brand>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.current-shop{border-bottom:1px solid #ffffff1a;flex:none;grid-template-columns:39px 1fr auto;align-items:center;gap:10px;padding:20px 5px 17px;display:grid}.shop-initial{background:var(--sand);width:39px;height:39px;color:var(--ink);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:11px;display:grid}.current-shop div{flex-direction:column;gap:3px;min-width:0;display:flex}.current-shop strong{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.current-shop small{color:var(--sage);font-size:9px}.current-shop button{color:var(--sage);cursor:pointer;background:0 0;border:0}.admin-sidebar nav{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff40 transparent;flex:auto;min-height:0;padding:20px 0;overflow-y:auto}.admin-sidebar nav::-webkit-scrollbar{width:6px}.admin-sidebar nav::-webkit-scrollbar-track{background:0 0}.admin-sidebar nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.admin-sidebar nav::-webkit-scrollbar-thumb:hover{background:#ffffff59}.nav-section{color:var(--ink-2);letter-spacing:.14em;padding:0 12px 8px;font-size:8px;display:block}.admin-sidebar nav a{color:#fff;border-radius:3px;align-items:center;gap:12px;height:39px;margin:2px 0;padding:0 12px;font-size:11px;transition:background .2s,color .2s;display:flex}.admin-sidebar nav a:hover{color:#fff;background:#ffffff0d}.admin-sidebar nav a.active{color:#fff;background:#ffffff1a}.admin-sidebar nav a b{background:var(--sage);color:#fff;border-radius:9px;place-items:center;min-width:20px;height:18px;margin-left:auto;font-size:8px;display:grid}.nav-icon{opacity:.85;flex:none;width:15px;height:15px;position:relative;transform:scale(.78)}.nav-icon--grid{background:linear-gradient(90deg,currentColor 0 42%,#0000 42% 58%,currentColor 58%),linear-gradient(currentColor 0 42%,#0000 42% 58%,currentColor 58%)}.nav-icon--calendar{border:1px solid}.nav-icon--calendar:before{content:"";border-top:1px solid;position:absolute;top:4px;left:2px;right:2px}.nav-icon--stack:before,.nav-icon--stack:after{content:"";border:1px solid;width:11px;height:8px;position:absolute;left:1px}.nav-icon--stack:before{top:1px}.nav-icon--stack:after{top:5px;left:4px}.nav-icon--card{border:1px solid;border-radius:2px}.nav-icon--card:before{content:"";border-top:2px solid;position:absolute;top:4px;left:0;right:0}.nav-icon--bars{border-bottom:2px solid;border-left:2px solid}.nav-icon--bars:after{content:"";background:currentColor;width:2px;height:5px;position:absolute;bottom:2px;left:3px;box-shadow:4px -3px,8px -7px}.nav-icon--settings{border:1px solid;border-radius:50%}.nav-icon--settings:after{content:"";border:1px solid;border-radius:50%;width:5px;height:5px;position:absolute;top:4px;left:4px}.nav-icon--people:before,.nav-icon--people:after{content:"";border:1px solid;border-radius:50%;width:6px;height:6px;position:absolute;top:1px;left:1px}.nav-icon--people:after{left:8px}.nav-icon--people{border-bottom:1px solid}.nav-icon--member:before{content:"";border:1px solid;border-radius:50%;width:6px;height:6px;position:absolute;top:0;left:4px}.nav-icon--member:after{content:"";border:1px solid;border-bottom:0;border-radius:8px 8px 0 0;width:13px;height:6px;position:absolute;bottom:0;left:1px}.nav-icon--logs{border:1px solid;border-radius:1px}.nav-icon--logs:before{content:"";background:currentColor;height:1px;position:absolute;top:4px;left:3px;right:3px;box-shadow:0 3px,0 6px}.nav-icon--block{border:1px solid;border-radius:50%}.nav-icon--block:before{content:"";transform-origin:50%;background:currentColor;height:1px;position:absolute;top:6px;left:1px;right:1px;transform:rotate(-45deg)}.nav-icon--coupon{border:1px solid;border-radius:2px}.nav-icon--coupon:before{content:"";border-left:1px dashed;position:absolute;top:2px;bottom:2px;left:5px}.nav-icon--coupon:after{content:"";border-top:1px solid;position:absolute;top:6px;left:8px;right:2px}.nav-icon--wallet{border:1px solid;border-radius:2px}.nav-icon--wallet:before{content:"";border-top:1px solid;position:absolute;top:3px;left:-1px;right:-1px}.nav-icon--wallet:after{content:"";border:1px solid;border-radius:50%;width:3px;height:3px;position:absolute;top:6px;right:1px}.nav-icon--instructor{border-right:1px solid}.nav-icon--instructor:before{content:"";border:1px solid;border-radius:50%;width:5px;height:5px;position:absolute;top:1px;left:1px}.nav-icon--instructor:after{content:"";box-sizing:border-box;border:1px solid;border-bottom:0;border-radius:6px 6px 0 0;width:9px;height:5px;position:absolute;bottom:1px;left:0}.admin-profile{border-top:1px solid #ffffff1a;flex:none;grid-template-columns:30px 1fr auto;align-items:center;gap:9px;height:65px;margin:auto -17px 0;padding:0 20px;display:grid}.admin-profile>span{background:var(--ink);border-radius:50%;place-items:center;width:30px;height:30px;font-size:11px;display:grid}.admin-profile div{flex-direction:column;gap:2px;min-width:0;display:flex}.admin-profile strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.admin-profile small{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.admin-profile button{color:var(--ink-2);cursor:pointer;background:0 0;border:0}@media (max-width:820px){.admin-sidebar__top .admin-label{display:none}.current-shop{grid-template-columns:30px 1fr auto}.admin-sidebar .shop-initial{width:30px;height:30px}}.admin-workspace{min-height:100vh;margin-left:245px}.admin-topbar{border-bottom:1px solid var(--line);height:55px;color:var(--sage);z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffde;align-items:center;padding:0 31px;font-size:11px;display:flex;position:sticky;top:0}.admin-topbar>div{align-items:center;gap:11px;margin-left:auto;display:flex}.help-button,.notification-button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:12px}.notification-button{width:25px;height:28px;position:relative}.notification-button i{border:1px solid;border-radius:7px 7px 3px 3px;width:11px;height:13px;margin:auto;display:block}.notification-button b{background:var(--sage);border-radius:50%;width:5px;height:5px;position:absolute;top:5px;right:3px}.view-shop{border:1px solid var(--sand);height:30px;color:var(--ink);cursor:pointer;background:#fff;align-items:center;gap:8px;padding:0 12px;font-size:11px;font-weight:600;display:flex}.view-shop:disabled{opacity:.6;cursor:default}.mobile-menu{display:none}.notif{align-items:center;display:flex;position:relative}.notif-bell{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;width:28px;height:28px;display:grid;position:relative}.notif-bell:hover{color:var(--ink);background:rgba(var(--ink-rgb),.06)}.notif-badge{background:var(--danger);color:#fff;text-align:center;border-radius:8px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:1px;right:0}.notif-panel{border:1px solid var(--line);width:320px;max-width:calc(100vw - 30px);max-height:70vh;box-shadow:0 18px 50px rgba(var(--ink-rgb),.18);z-index:40;background:#fff;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.notif-panel__head{border-bottom:1px solid var(--line);color:var(--ink);background:#fff;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:11px;font-weight:700;display:flex;position:sticky;top:0}.notif-mark-read{color:var(--sage);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:10px;font-weight:600}.notif-mark-read:hover{text-decoration:underline}.notif-empty{color:var(--muted);text-align:center;padding:22px 14px;font-size:11px}.notif-list{margin:0;padding:0;list-style:none}.notif-item{border-bottom:1px solid var(--line);cursor:default;background:#fff;grid-template-columns:8px 1fr auto;align-items:start;gap:9px;padding:11px 14px;display:grid}.notif-item:last-child{border-bottom:0}.notif-item:hover,.notif-item:focus{background:rgba(var(--ink-rgb),.04);outline:none}.notif-item--unread{background:#e8f5e9}.notif-item--unread:hover,.notif-item--unread:focus{background:#d9edda}.notif-item--unread .notif-item__body strong{font-weight:750}.notif-dot{background:var(--muted);border-radius:50%;width:8px;height:8px;margin-top:4px}.notif-dot--booking_confirmed{background:var(--sage)}.notif-dot--booking_cancelled{background:var(--attention)}.notif-dot--payment_pending_review{background:var(--sand)}.notif-item__body{flex-direction:column;gap:2px;min-width:0;display:flex}.notif-item__shop{letter-spacing:.03em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:700}.notif-item__body strong{color:var(--ink);font-size:11px;font-weight:650;line-height:1.35}.notif-item__body small{color:var(--ink-2);font-size:10px}.notif-item time{color:var(--muted);white-space:nowrap;font-size:9px}@media (max-width:820px){.notif-panel{width:auto;max-width:none;position:fixed;top:63px;left:15px;right:15px}}.sidebar-toggle{cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;gap:3px;width:32px;height:30px;padding:0;display:flex}.sidebar-toggle i{background:var(--muted);border-radius:1px;width:16px;height:1.5px;transition:background .2s}.sidebar-toggle:hover i{background:var(--ink)}.admin-sidebar__backdrop{display:none}.admin-sidebar,.admin-workspace{transition:width .2s,margin-left .2s,transform .2s}.admin-app--collapsed .admin-sidebar{width:66px;padding:0 9px}.admin-app--collapsed .admin-workspace{margin-left:66px}.admin-app--collapsed .admin-sidebar__top{justify-content:center;padding:0}.admin-app--collapsed .brand span:not(.brand-mark),.admin-app--collapsed .admin-sidebar__close,.admin-app--collapsed .admin-label,.admin-app--collapsed .current-shop div,.admin-app--collapsed .current-shop button,.admin-app--collapsed .nav-section,.admin-app--collapsed .admin-sidebar nav a span,.admin-app--collapsed .admin-sidebar nav a b,.admin-app--collapsed .admin-profile div{display:none}.admin-app--collapsed .current-shop{grid-template-columns:1fr;justify-items:center;padding:16px 0}.admin-app--collapsed .admin-sidebar nav a{justify-content:center;gap:0;padding:0}.admin-app--collapsed .admin-profile{grid-template-columns:1fr;justify-items:center;margin:auto 0 0;padding:12px 0}.admin-content{max-width:1500px;margin:auto;padding:31px clamp(24px,3vw,45px) 70px}.admin-page-heading{justify-content:space-between;align-items:end;margin-bottom:29px;display:flex}.admin-page-heading h1{letter-spacing:-.03em;margin:0;font-family:Georgia,serif;font-size:32px;font-weight:400}.admin-heading-actions{align-items:center;gap:9px;display:flex}.secondary-action,.admin-primary{border-radius:2px;min-height:35px;padding:0 15px;font-size:11px;font-weight:650}.secondary-action{border:1px solid var(--sand);cursor:pointer;background:#fff}.admin-primary{background:var(--sage);gap:10px}.admin-primary span{font-size:16px;font-weight:400}.metric-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px;display:grid}.metric-card{border:1px solid var(--line);background:#fff;min-height:131px;padding:18px 19px;position:relative}.metric-card>div{justify-content:space-between;align-items:center;display:flex}.metric-card>div>span{color:var(--muted);letter-spacing:.1em;font-size:10px;font-weight:700}.metric-card>strong{margin:14px 0 8px;font-family:Georgia,serif;font-size:28px;font-weight:400;display:block}.metric-card p{color:var(--muted);margin:0;font-size:10px}.delta{color:var(--sage);font-weight:700}.delta--down{color:var(--danger)}.metric-card--alert{background:var(--paper);border-color:var(--paper)}.metric-card--alert a{color:var(--sage);font-size:10px;font-weight:650;position:absolute;bottom:16px;right:19px}.metric-icon{background:var(--sage-pale);border-radius:50%;width:25px;height:25px;position:relative}.metric-icon--payment:before{content:"฿";color:var(--sage);place-items:center;font-size:13px;font-style:normal;font-weight:700;display:grid;position:absolute;inset:0}.metric-icon--calendar:before{content:"";border:1px solid var(--sage);width:10px;height:10px;position:absolute;top:7px;left:7px}.metric-icon--clock:before{content:"";border:1px solid var(--sage);border-radius:50%;width:10px;height:10px;position:absolute;top:7px;left:7px}.metric-icon--clock:after{content:"";background:var(--sage);transform-origin:bottom;width:1px;height:4px;position:absolute;top:9px;left:12px;transform:rotate(35deg)}.metric-icon--alert{background:var(--paper);color:var(--sage);place-items:center;font-family:Georgia,serif;font-style:normal;display:grid}.dashboard-grid{grid-template-columns:minmax(0,1fr);gap:15px;margin-bottom:15px;display:grid}.dashboard-card{border:1px solid var(--line);background:#fff}.card-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;min-height:69px;padding:17px 20px;display:flex}.card-heading h2{margin:0 0 4px;font-family:Georgia,serif;font-size:16px;font-weight:400}.card-heading p{color:var(--muted);margin:0;font-size:10px}.card-heading>a{color:var(--sage);margin-top:4px;font-size:10px;font-weight:650}.card-heading>button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:10px}.appointment{border-bottom:1px solid var(--paper);grid-template-columns:47px 1px minmax(170px,1fr) 81px 65px 20px;align-items:center;gap:13px;min-height:68px;padding:10px 18px;display:grid}.appointment time{flex-direction:column;display:flex}.appointment time strong{font-family:Georgia,serif;font-size:15px;font-weight:400}.appointment time span{color:var(--muted);font-size:9px}.appointment>i{background:var(--sand);height:37px}.appointment__customer{align-items:center;gap:10px;min-width:0;display:flex}.appointment__customer>span,.staff span{background:var(--sand);width:28px;height:28px;color:var(--sage);border-radius:50%;place-items:center;font-size:9px;font-weight:700;display:grid}.appointment__customer>div{flex-direction:column;gap:4px;min-width:0;display:flex}.appointment__customer strong{font-size:11px}.appointment__customer small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.status{border-radius:10px;justify-content:center;align-items:center;width:max-content;min-width:70px;height:20px;font-size:9px;font-weight:650;display:inline-flex}.status--confirmed{color:var(--sage);background:var(--sage-pale)}.status--hold{color:var(--sage);background:var(--paper)}.staff{align-items:center;gap:6px;font-size:10px;display:flex}.staff span{background:var(--paper);width:20px;height:20px;color:var(--ink-2)}.appointment>button{color:var(--ink-2);cursor:pointer;background:0 0;border:0;font-size:11px}.next-gap{min-height:43px;color:var(--ink-2);background:var(--paper);align-items:center;padding:0 20px;font-size:10px;display:flex}.next-gap>span{width:94px}.next-gap i{background:var(--sage);width:1px;height:18px;margin-right:14px}.next-gap button{color:var(--sage);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:10px}.pulse-total{align-items:end;gap:12px;padding:23px 22px 5px;display:flex}.pulse-total>strong{font-family:Georgia,serif;font-size:36px;font-weight:400}.pulse-total>span{color:var(--muted);margin-bottom:4px;font-size:10px;line-height:1.6}.mini-chart{align-items:end;gap:11px;height:145px;padding:18px 20px 0;display:flex}.mini-chart>div{flex-direction:column;flex:1;justify-content:end;align-items:center;gap:8px;height:100%;display:flex}.mini-chart i{background:var(--sand);width:100%;max-width:22px;display:block}.mini-chart i.peak{background:var(--sage)}.mini-chart span{color:var(--muted);font-size:8px}.pulse-breakdown{border-top:1px solid var(--line);margin:15px 20px 20px;padding-top:15px}.pulse-breakdown div{justify-content:space-between;padding:5px 0;font-size:10px;display:flex}.pulse-breakdown span{color:var(--muted)}.dot{border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.dot--green,.dot--sand,.dot--gray{background:var(--sage)}.dot--ink{background:var(--ink)}.performance-table{padding:0 20px 8px}.table-head,.table-row{border-bottom:1px solid var(--paper);grid-template-columns:2fr .7fr .8fr 1fr;align-items:center;gap:20px;min-height:42px;font-size:10px;display:grid}.table-head{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px}.table-row>strong{font-size:11px}.trend-bar{background:var(--paper);height:4px}.trend-bar i{background:var(--sage);height:100%;display:block}.segmented{border:1px solid var(--sand);background:#fff;padding:2px;display:flex}.segmented button{cursor:pointer;background:0 0;border:0;min-width:50px;height:29px;font-size:10px}.segmented button.active{background:var(--ink);color:#fff}.availability-stats{border:1px solid var(--line);background:#fff;align-items:center;min-height:52px;margin-bottom:12px;padding:0 18px;display:flex}.availability-stats>div{align-items:center;gap:7px;padding-right:25px;font-size:10px;display:flex}.availability-stats>div>span{color:var(--muted)}.stat-dot{border-radius:2px;width:8px;height:8px}.stat-dot--available{background:var(--sand);border:1px solid var(--sage)}.stat-dot--booked{background:var(--sage)}.stat-dot--hold{background:var(--sand)}.availability-stats .utilization{margin-left:auto;padding-right:0}.utilization>i{background:var(--paper);width:110px;height:4px;display:block}.utilization>i b{background:var(--sage);height:100%;display:block}.calendar-card{border:1px solid var(--line);background:#fff;overflow:auto}.calendar-head{border-bottom:1px solid var(--line);grid-template-columns:60px repeat(3,1fr);min-width:750px;height:61px;display:grid}.calendar-head>span{color:var(--muted);border-right:1px solid var(--line);place-items:center;font-size:9px;display:grid}.calendar-head>div{border-right:1px solid var(--line);grid-template-rows:1fr 1fr;grid-template-columns:30px 1fr;align-items:end;column-gap:8px;padding:9px 15px;display:grid}.calendar-head i{background:var(--sand);width:30px;height:30px;color:var(--sage);border-radius:50%;grid-row:1/3;align-self:center;place-items:center;font-size:10px;font-style:normal;display:grid}.calendar-head strong{font-size:11px}.calendar-head small{color:var(--muted);align-self:start;margin-top:3px;font-size:9px}.calendar-body{grid-template-columns:60px 1fr;min-width:750px;height:570px;display:grid}.time-column{border-right:1px solid var(--line);flex-direction:column;display:flex}.time-column span{text-align:center;height:57px;color:var(--muted);padding-top:6px;font-size:9px}.calendar-columns{grid-template-columns:repeat(3,1fr);display:grid;position:relative}.staff-column{border-right:1px solid var(--line);position:relative}.staff-column>i{border-bottom:1px solid var(--paper);height:57px;display:block}.calendar-event{z-index:2;border:0;border-left:3px solid var(--sage);background:var(--sand);text-align:left;cursor:pointer;flex-direction:column;gap:2px;padding:7px 9px;display:flex;position:absolute;left:7px;right:7px;overflow:hidden}.calendar-event strong{font-size:10px}.calendar-event span{color:var(--ink-2);font-size:9px}.calendar-event small{color:var(--muted);font-size:8px}.calendar-event--hold{background:var(--paper);border-left-color:var(--sage)}.now-line{z-index:3;pointer-events:none;align-items:center;display:flex;position:absolute;left:0;right:0}.now-line span{background:var(--sage);color:#fff;padding:2px 4px;font-size:8px;position:absolute;left:-42px}.now-line i{background:var(--sage);width:100%;height:1px}.admin-subheading{color:var(--muted);justify-content:space-between;margin:-16px 0 23px;font-size:11px;display:flex}.admin-subheading p{margin:0}.admin-subheading span{color:var(--sage);background:var(--sage-pale);border-radius:12px;padding:5px 9px}.admin-subheading--embedded{margin-top:0}.services-admin-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.service-admin-card{border:1px solid var(--line);background:#fff;grid-template-columns:150px 1fr;min-height:215px;display:grid}.service-admin-art{background:var(--sage);place-items:center;display:grid;position:relative;overflow:hidden}.service-admin-art:before{content:"";background:#ffffff59;border-radius:50% 50% 5% 5%;width:90px;height:120px;position:absolute}.service-admin-art:after{content:"";background:rgba(var(--ink-rgb),.68);border-radius:50%;width:65px;height:65px;position:absolute;bottom:10px}.service-admin-art>span{z-index:2;color:#fff;font-family:Georgia,serif;font-size:19px;position:relative}.service-admin-art>button{z-index:3;background:rgba(var(--ink-rgb),.8);color:#fff;cursor:pointer;border:0;padding:6px 9px;font-size:9px;position:absolute;bottom:8px;left:8px}.service-admin-art--clay{background:var(--sage)}.service-admin-art--sand{background:var(--sand)}.service-admin-art--ink{background:var(--ink-2)}.service-admin-body{padding:17px 18px}.service-admin-title{justify-content:space-between;display:flex}.service-admin-title span{color:var(--sage);letter-spacing:.1em;font-size:9px}.service-admin-title h2{margin:5px 0 0;font-family:Georgia,serif;font-size:16px;font-weight:400}.service-admin-body>p{color:var(--muted);margin:10px 0 13px;font-size:10px;line-height:1.5}.service-admin-body dl{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0;padding:10px 0;display:flex}.service-admin-body dl div{flex:1}.service-admin-body dt{color:var(--muted);margin-bottom:4px;font-size:9px}.service-admin-body dd{margin:0;font-size:10px;font-weight:650}.service-admin-actions{justify-content:space-between;padding-top:11px;display:flex}.service-admin-actions button{color:var(--sage);cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:650}.switch{width:31px;height:18px;display:inline-flex;position:relative}.switch input{opacity:0;position:absolute}.switch i{cursor:pointer;background:#c6c6c6;border-radius:10px;width:100%;height:100%;transition:all .2s}.switch i:after{content:"";width:14px;height:14px;box-shadow:0 1px 3px rgba(var(--ink-rgb),.2);background:#fff;border-radius:50%;margin:2px;transition:all .2s;display:block}.switch input:checked+i{background:var(--sage)}.switch input:checked+i:after{transform:translate(13px)}.switch--large{width:40px;height:23px}.switch--large i:after{width:19px;height:19px}.switch--large input:checked+i:after{transform:translate(17px)}.readonly-banner{background:var(--paper);border:1px solid var(--sand);border-left:3px solid var(--clay);grid-template-columns:20px 1fr;align-items:center;gap:13px;margin:0 0 22px;padding:14px 18px;display:grid}.readonly-banner__mark{border:1.5px solid var(--clay);border-radius:50%;width:18px;height:18px;position:relative}.readonly-banner__mark:before{content:"";background:var(--clay);width:2px;height:7px;position:absolute;top:3px;left:7px}.readonly-banner__mark:after{content:"";background:var(--clay);width:2px;height:2px;position:absolute;top:12px;left:7px}.readonly-banner strong{font-size:12px;display:block}.readonly-banner p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.5}.readonly-note{background:var(--line);color:var(--ink-2);margin:16px 0 0;padding:10px 12px;font-size:11px;line-height:1.5}.admin-app--readonly .admin-topbar{border-bottom-color:var(--clay);box-shadow:inset 0 3px 0 var(--clay)}.configuration-banner{background:var(--sage-pale);border:1px solid var(--sand);grid-template-columns:40px 1fr auto;align-items:center;gap:14px;margin-top:16px;padding:18px 21px;display:grid}.config-mark{border:1px solid var(--sage);justify-content:center;align-items:center;gap:3px;width:38px;height:38px;display:flex}.config-mark i{background:var(--sage);width:2px;height:14px}.config-mark i:nth-child(2){height:22px}.configuration-banner strong{font-size:12px}.configuration-banner p{color:var(--muted);margin:4px 0 0;font-size:10px}.configuration-banner a{color:var(--sage);font-size:10px;font-weight:650}.modal-backdrop,.review-drawer-backdrop{inset:0;top:calc(var(--vv-top,0)/var(--admin-zoom,1));height:calc(var(--vv-height,100dvh)/var(--admin-zoom,1));background:rgba(var(--ink-rgb),.48);z-index:100;place-items:center;display:grid;position:fixed;bottom:auto}.admin-modal{width:min(520px,100vw - 30px);max-height:calc(var(--vv-height,100dvh)/var(--admin-zoom,1) - 32px);box-shadow:0 25px 80px rgba(var(--ink-rgb),.22);background:#fff;padding:32px;position:relative;overflow-y:auto}.modal-close{float:right;z-index:1;color:var(--muted);cursor:pointer;background:#fff;border:0;margin:-19px -16px 0 0;padding:0 5px;font-size:19px;line-height:1.2;position:sticky;top:13px}.admin-modal h2{margin:0 0 25px;font-family:Georgia,serif;font-size:25px;font-weight:400}.admin-modal label,.settings-form label{color:var(--ink-2);flex-direction:column;gap:6px;margin-bottom:14px;font-size:10px;font-weight:650;display:flex}.admin-modal input,.admin-modal select,.settings-form input,.settings-form select{box-sizing:border-box;border:1px solid var(--sand);border-radius:var(--radius-md);width:100%;min-height:36px;color:var(--ink);background:#fff;outline:none;padding:0 12px;font-size:11px}.admin-modal textarea,.settings-form textarea{box-sizing:border-box;border:1px solid var(--sand);border-radius:var(--radius-md);width:100%;color:var(--ink);resize:vertical;background:#fff;outline:none;min-height:78px;padding:10px 12px;font-size:11px}.form-row{grid-template-columns:1fr 1fr;gap:13px;display:grid}.admin-modal .admin-primary{width:100%}.admin-modal select,.settings-form select{appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234d5a2e' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:9px;padding-right:26px}.admin-modal label,.settings-form label{min-width:0}.admin-modal input[type=time],.settings-form input[type=time],.settings-form input[type=date]{box-sizing:border-box;width:100%;min-width:0;max-width:100%}@media (max-width:820px){.admin-modal input[type=time],.settings-form input[type=time],.settings-form input[type=date]{appearance:none}}.modal-actions{justify-content:space-between;align-items:center;gap:14px;display:flex}.modal-actions .danger-action{white-space:nowrap;width:auto;margin-top:0}.modal-actions .admin-primary{width:auto}.checkbox-select{vertical-align:middle;max-width:100%;display:inline-block;position:relative}.checkbox-select__trigger{box-sizing:border-box;appearance:none;border:1px solid var(--sand);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:0;outline:none;justify-content:space-between;align-items:center;gap:8px;display:flex}.checkbox-select__trigger:focus-visible{outline:2px solid var(--sage);outline-offset:2px}.checkbox-select__trigger:disabled{opacity:.55;cursor:wait}.checkbox-select__value{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.checkbox-select__value--placeholder{color:var(--muted)}.checkbox-select__caret{border-right:2px solid var(--sage);border-bottom:2px solid var(--sage);flex:none;width:8px;height:8px;margin-left:2px;transition:transform .15s;transform:translateY(-2px)rotate(45deg)}.checkbox-select[data-open=true] .checkbox-select__caret{transform:translateY(1px)rotate(-135deg)}.checkbox-select__panel{z-index:40;border:1px solid var(--line);min-width:100%;max-width:340px;max-height:260px;box-shadow:0 12px 30px rgba(var(--ink-rgb),.16);background:#fff;flex-direction:column;gap:2px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.checkbox-select__option{box-sizing:border-box;width:100%;min-height:28px;color:var(--ink);font:inherit;text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:4px 8px;font-size:12px;line-height:1.3;display:flex}.checkbox-select__option:hover{background:var(--paper)}.checkbox-select__option-label{text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.checkbox-select__option[aria-selected=true]{background:var(--sage-pale);color:var(--sage);font-weight:650}.checkbox-select__box{box-sizing:border-box;border:1.5px solid rgba(var(--ink-2-rgb),.4);background:#fff;border-radius:5px;flex:none;width:16px;height:16px;transition:background .15s,border-color .15s;position:relative}.checkbox-select__option[aria-selected=true] .checkbox-select__box{border-color:var(--checkbox-accent,var(--sage));background:var(--checkbox-accent,var(--sage))}.checkbox-select__option[aria-selected=true] .checkbox-select__box:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.checkbox-select__option--single[aria-selected=true]:after{content:"";border:solid var(--sage);border-width:0 2px 2px 0;flex:none;width:4px;height:8px;margin-bottom:2px;margin-left:auto;transform:rotate(45deg)}.admin-modal .checkbox-select,.settings-form .checkbox-select,.manual-field .checkbox-select,.customer-profile-modal .checkbox-select{width:100%;display:block}.admin-modal .checkbox-select__trigger,.settings-form .checkbox-select__trigger{border-radius:var(--radius-md);min-height:36px;padding:0 12px;font-size:11px}.customer-profile-modal .checkbox-select__trigger{border-radius:var(--radius-md);height:44px;padding:0 12px;font-size:16px}.customer-profile-modal .checkbox-select__option{min-height:44px;font-size:14px}.manual-field .checkbox-select__trigger{border-radius:var(--radius-md);min-height:36px;padding:0 12px;font-size:11px}.manual-field .checkbox-select__trigger:disabled{background:var(--paper);color:var(--muted);cursor:not-allowed}.date-picker{vertical-align:middle;max-width:100%;display:inline-block;position:relative}.date-picker__trigger{box-sizing:border-box;appearance:none;border:1px solid var(--sand);border-radius:var(--radius-md);width:100%;min-height:36px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#fff;outline:none;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-size:11px;display:flex}.date-picker__trigger:focus-visible{outline:2px solid var(--sage);outline-offset:2px}.date-picker__trigger:disabled{opacity:.55;cursor:not-allowed}.date-picker__value{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.date-picker__value--placeholder{color:var(--muted)}.date-picker__glyph{color:var(--muted);flex:none}.date-picker>.date-picker__native{box-sizing:border-box;opacity:0;pointer-events:none;border:0;width:100%;height:100%;min-height:0;margin:0;padding:0;position:absolute;top:0;left:0}.date-picker__panel{z-index:42;box-sizing:border-box;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);width:276px;max-width:calc(100vw - 24px);box-shadow:0 14px 34px rgba(var(--ink-rgb),.13), 0 2px 6px rgba(var(--ink-rgb),.06);position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}.form-row label:last-child .date-picker__panel,.daterange-popover__row label:last-child .date-picker__panel{left:auto;right:0}.date-picker__header{background-image:linear-gradient(90deg,var(--sage) 0%,var(--sand) 100%);justify-content:space-between;align-items:center;gap:6px;padding:9px 10px;display:flex}@supports (color:color-mix(in lab, red, red)){.date-picker__header{background-image:linear-gradient(90deg,var(--sage) 0%,color-mix(in srgb,var(--sand) 45%,var(--ink)) 100%)}}.date-picker__header{background-color:var(--sage);color:#fff}.date-picker__month{color:#fff;text-align:center;white-space:nowrap;text-overflow:ellipsis;background:#ffffff29;border-radius:999px;flex:auto;min-width:0;padding:4px 10px;font-size:11px;font-weight:650;overflow:hidden}.date-picker__nav{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;padding:0;display:grid}.date-picker__nav:hover{background:#fff3}.date-picker__nav:focus-visible{outline-offset:1px;outline:2px solid #fff}.date-picker__chevron{border-top:1.5px solid;border-right:1.5px solid;width:7px;height:7px;display:block}.date-picker__chevron--prev{transform:translate(1px)rotate(-135deg)}.date-picker__chevron--next{transform:translate(-1px)rotate(45deg)}.date-picker__weekdays{color:var(--sage-dark);letter-spacing:.06em;text-align:center;grid-template-columns:repeat(7,1fr);padding:9px 8px 3px;font-size:11px;font-weight:700;display:grid}.date-picker__grid{grid-template-columns:repeat(7,1fr);gap:1px;padding:0 8px 6px;display:grid}.date-picker__day{height:36px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:1.5px solid #0000;border-radius:10px;place-items:center;padding:0;font-size:12px;transition:background .15s;display:grid}.date-picker__day:hover:not(:disabled){background:var(--sage-pale)}.date-picker__day:focus-visible{outline:2px solid var(--sage);outline-offset:-2px}.date-picker__day--outside{color:var(--muted)}.date-picker__day--selected{border-color:var(--sage);background:var(--sage-pale);color:var(--sage-dark);font-weight:650}.date-picker__day:disabled{opacity:.35;cursor:default}.date-picker__footer{border-top:1px solid var(--line);align-items:center;padding:7px 12px;display:flex}.date-picker__clear{color:var(--sage-dark);cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-size:10px;font-weight:650}.date-picker__clear:hover{text-decoration:underline}.admin-modal .date-picker,.settings-form .date-picker,.manual-field .date-picker{width:100%;display:block}.admin-modal .date-picker__trigger,.settings-form .date-picker__trigger,.manual-field .date-picker__trigger{border-radius:var(--radius-md);min-height:36px;padding:0 12px;font-size:11px;font-weight:400}.filter-field .date-picker{flex:auto;min-width:0;display:block}.filter-field .date-picker__trigger{height:32px;min-height:32px;color:var(--ink);letter-spacing:normal;text-transform:none;background:0 0;border:0;border-radius:0;padding:0;font-size:10px;font-weight:400}.filter-field .date-picker__trigger:focus-visible{outline:none}.filter-field .date-picker__glyph{display:none}.settings-layout{grid-template-columns:175px minmax(0,760px);align-items:start;gap:25px;display:grid}.settings-nav{border:1px solid var(--line);background:#fff;flex-direction:column;padding:9px;display:flex;position:sticky;top:80px}.settings-nav a{color:var(--muted);border-left:2px solid #0000;padding:11px 12px;font-size:11px}.settings-nav a.active{color:var(--sage);background:var(--sage-pale);border-left-color:var(--sage);font-weight:650}.settings-content{flex-direction:column;gap:15px;display:flex}.settings-section{border:1px solid var(--line);background:#fff;padding:23px;scroll-margin-top:70px}.settings-heading{justify-content:space-between;align-items:start;margin-bottom:20px;display:flex}.settings-heading h2{margin:0 0 5px;font-family:Georgia,serif;font-size:18px;font-weight:400}.settings-heading p{color:var(--muted);margin:0;font-size:10px}.settings-heading>span{color:var(--sage);letter-spacing:.1em;background:var(--sage-pale);padding:5px 7px;font-size:9px}.cover-editor{height:150px;margin-bottom:18px;position:relative}.cover-art{background:linear-gradient(120deg,var(--ink),var(--sage));place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.cover-art:before,.cover-art:after{content:"";border:13px solid rgba(var(--paper-rgb),.35);border-radius:50% 50% 0 0;width:170px;height:160px;position:absolute;bottom:-60px}.cover-art:before{left:60px}.cover-art:after{right:60px}.cover-art>span{color:#ffffffbf;letter-spacing:.22em;font-size:11px}.cover-editor>button{background:rgba(var(--ink-rgb),.82);color:#fff;cursor:pointer;border:0;padding:7px 10px;font-size:9px;position:absolute;bottom:10px;right:10px}.settings-form label>small{color:var(--muted);font-size:9px;font-weight:400}.input-prefix{border:1px solid var(--sand);border-radius:var(--radius-md);display:flex;overflow:hidden}.input-prefix span{background:var(--paper);color:var(--muted);border-right:1px solid var(--sand);align-items:center;padding:0 9px;font-size:10px;display:flex}.input-prefix input{border:0}.setting-toggle-row{background:var(--paper);border:1px solid var(--sand);border-radius:var(--radius-md);grid-template-columns:40px 1fr auto;align-items:start;gap:15px;padding:17px;display:grid}.verify-mark{background:var(--sage);border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.verify-mark i{border-bottom:2px solid #fff;border-left:2px solid #fff;width:15px;height:8px;transform:rotate(-45deg)translateY(-2px)}.setting-toggle-row strong{font-size:12px}.setting-toggle-row p{color:var(--muted);margin:5px 0 8px;font-size:10px;line-height:1.5}.feature-status{color:var(--muted);font-size:9px}.feature-status.active{color:var(--sage)}.feature-status.active:before{content:"";background:var(--sage);border-radius:50%;width:5px;height:5px;margin-right:4px;display:inline-block}.bank-account{border:1px solid var(--line);border-radius:var(--radius-md);margin-top:14px;padding:14px}.bank-account>span{color:var(--muted);letter-spacing:.1em;font-size:9px}.bank-account>div{align-items:center;gap:11px;margin-top:10px;display:flex}.bank-account i{background:var(--sand);width:30px;height:30px;color:var(--sage);border-radius:50%;place-items:center;font-size:9px;font-style:normal;font-weight:700;display:grid}.bank-account div div{flex:1}.bank-account strong{font-size:11px}.bank-account p{color:var(--muted);margin:3px 0 0;font-size:9px}.bank-account button,.text-link{color:var(--sage);cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:650}.text-link--danger{color:#d92d20}.text-link--danger:hover{color:#b42318}.hours-list>div{border-top:1px solid var(--paper);grid-template-columns:38px 100px 90px 25px 90px auto;align-items:center;min-height:44px;font-size:10px;display:grid}.hours-list input{box-sizing:border-box;border:1px solid var(--sand);border-radius:var(--radius-md);text-align:center;padding:7px;font-size:10px}.hours-list button{border:1px solid var(--sand);border-radius:var(--radius-md);width:24px;height:24px;color:var(--sage);cursor:pointer;background:#fff}.hours-list .closed{color:var(--muted)}.save-toast{z-index:90;background:var(--ink);color:#fff;box-shadow:0 10px 30px rgba(var(--ink-rgb),.2);padding:12px 18px;font-size:11px;position:fixed;top:70px;right:25px}.settings-form :is(input,textarea)[aria-invalid=true]{background:#fff8f7;border-color:#d92d20;box-shadow:0 0 0 1px #d92d2014}.settings-form label>small.settings-field-error{color:#b42318;font-size:9px;line-height:1.4}.payment-qr-field{margin-bottom:14px}.payment-qr-field>strong{color:var(--ink-2);margin-bottom:10px;font-size:10px;font-weight:650;display:block}.settings-section .payment-qr-image-editor{margin-bottom:0}.payment-qr-image-preview{border:1px solid var(--sand);border-radius:var(--radius-md);background:#fff}.service-image-preview.payment-qr-image-preview img{object-fit:contain;box-sizing:border-box;padding:7px}.payment-qr-image-preview span{color:var(--sage);font-family:var(--font-sans);font-size:20px;font-weight:650}.payment-qr-field .settings-field-error{color:#b42318;font-size:9px;line-height:1.4}.promptpay-qr img{object-fit:contain;box-sizing:border-box}.admin-modal label>small{color:var(--muted);font-size:9px;font-weight:400;line-height:1.5}.payment-summary-grid,.report-metrics{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px;display:grid}.payment-summary-grid article,.report-metrics article{border:1px solid var(--line);background:#fff;padding:17px 18px}.payment-summary-grid span,.report-metrics span{color:var(--muted);letter-spacing:.1em;font-size:9px}.payment-summary-grid strong,.report-metrics strong{margin:11px 0 5px;font-family:Georgia,serif;font-size:23px;font-weight:400;display:block}.payment-summary-grid small,.report-metrics p{color:var(--muted);margin:0;font-size:10px}.payments-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:61px;padding:0 17px;display:flex}.filter-tabs{align-self:stretch;gap:19px;display:flex}.filter-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:10px;position:relative}.filter-tabs button.active{color:var(--ink);font-weight:650}.filter-tabs button.active:after{content:"";background:var(--sage);height:2px;position:absolute;bottom:-1px;left:0;right:0}.filter-tabs b{background:var(--paper);color:var(--sage);border-radius:7px;margin-left:5px;padding:2px 5px;font-size:8px}.payments-toolbar>div:last-child:not(.table-daterange){gap:8px;display:flex}.table-search{border:1px solid var(--sand);align-items:center;width:185px;height:32px;padding:0 5px;display:flex}.table-search .search-mark{width:12px;height:12px;margin-left:5px}.table-search input{border:0;outline:0;width:100%;padding:0 10px;font-size:10px}.payments-head,.payment-row{grid-template-columns:1.55fr .65fr .7fr .55fr .8fr 52px;align-items:center;gap:14px;padding:0 18px;display:grid}.payments-head{background:var(--paper);border-bottom:1px solid var(--line);min-height:35px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:9px}.payment-row{border-bottom:1px solid var(--paper);min-height:62px;font-size:10px}.payment-customer{align-items:center;gap:9px;display:flex}.payment-customer>i{background:var(--sage-pale);width:29px;height:29px;color:var(--sage);border-radius:50%;place-items:center;font-size:9px;font-style:normal;font-weight:700;display:grid}.payment-customer span,.payment-row>span:nth-child(3),.payment-created{flex-direction:column;gap:3px;display:flex}.payment-customer strong{font-size:10px}.payment-customer small,.payment-row small{color:var(--muted);font-size:9px}.booking-id{font-family:var(--font-geist-mono);font-size:9px}.payment-state{border-radius:11px;align-items:center;gap:5px;width:max-content;padding:5px 8px;font-size:9px;font-weight:650;display:inline-flex}.payment-state:before{content:"";background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.payment-state--needs-review{color:var(--sage);background:var(--paper)}.payment-state--verified{color:#2e7d32;background:#e6f4ea}.payment-state--rejected{color:#1c1b1f;background:#e9e7e4}.payment-state--pending{color:#8a5a00;background:#fdf3d0}.payment-row>button{color:var(--sage);cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:650}.payment-booking{flex-direction:column;gap:3px;display:flex}.payment-booking small{line-height:1.35}.payments-list-card .payments-head,.payments-list-card .payment-row{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,.85fr) minmax(0,.65fr) minmax(0,.7fr) minmax(0,.75fr) minmax(48px,52px)}.topups-list-card .payments-head,.topups-list-card .payment-row{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) minmax(0,.8fr) minmax(0,.7fr) minmax(0,.8fr) minmax(48px,52px)}.payment-wallet-flag{background:var(--sage-pale);width:max-content;color:var(--sage-dark);white-space:nowrap;border-radius:9px;padding:4px 7px;font-size:9px;font-weight:650}.payment-wallet-none{color:var(--muted);font-size:10px}.payment-amount-cell,.payment-instructor{flex-direction:column;gap:3px;min-width:0;display:flex}.payment-amount-cell strong,.payment-instructor strong{font-size:10px}.payment-wallet-hint,.payment-instructor small{color:var(--muted);font-size:9px;line-height:1.35}.review-drawer .payment-wallet-flag{margin-top:6px;display:inline-block}:is(.payments-list-card,.bookings-table,.group-bookings-table,.group-payments-table) .payment-subtotal-row{border-top:2px solid var(--line);background:var(--paper);justify-content:flex-end;align-items:baseline;gap:12px;padding:14px 18px;display:flex}:is(.payments-list-card,.bookings-table,.group-bookings-table,.group-payments-table) .payment-subtotal-label{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:9px}:is(.payments-list-card,.bookings-table,.group-bookings-table,.group-payments-table) .payment-subtotal-amount{font-size:13px;font-weight:700}.review-drawer-backdrop{display:block}.review-drawer{width:min(410px,100vw);box-shadow:-15px 0 40px rgba(var(--ink-rgb),.18);background:#fff;padding:32px;position:absolute;top:0;bottom:0;right:0;overflow:auto}.review-drawer h2{margin:0 0 5px;font-family:Georgia,serif;font-size:27px;font-weight:400}.review-drawer>p:nth-of-type(2){color:var(--muted);margin:0 0 20px;font-size:11px}.slip-image{text-align:center;margin:0 0 16px}.slip-image img{border:1px solid var(--sand);border-radius:4px;max-width:100%;max-height:340px;margin:0 auto;display:block}.slip-none{color:var(--muted);text-align:center;margin:0 0 16px;font-size:10px}.slip-preview{background:var(--paper);border:1px solid var(--sand);text-align:center;padding:22px}.slip-preview>span{color:var(--sage);font-size:11px;font-weight:750}.slip-preview>strong{margin:10px 0;font-size:13px;display:block}.slip-preview>i{border-left:2px solid var(--sage);border-bottom:2px solid var(--sage);width:35px;height:18px;margin:0 auto 22px;display:block;transform:rotate(-45deg)}.slip-preview dl{text-align:left;background:#fff;margin:0;padding:10px 14px}.slip-preview dl div{border-bottom:1px solid var(--paper);justify-content:space-between;padding:7px 0;font-size:10px;display:flex}.slip-preview dt{color:var(--muted)}.slip-preview dd{margin:0;font-weight:650}.verification-list{margin:18px 0}.verification-list>div{border-bottom:1px solid var(--paper);gap:10px;padding:9px 0;display:flex}.verification-list>div>i{background:var(--sage-pale);width:20px;height:20px;color:var(--sage);border-radius:50%;place-items:center;font-size:10px;font-style:normal;display:grid}.verification-list span{flex-direction:column;gap:3px;display:flex}.verification-list strong{font-size:11px}.verification-list small{color:var(--muted);font-size:9px}.review-drawer .admin-primary{width:100%}.danger-action{box-sizing:border-box;color:#fff;cursor:pointer;width:100%;min-height:35px;box-shadow:var(--filter-rest);background:#b3261e;border:0;border-radius:11px;justify-content:center;align-items:center;margin-top:14px;padding:0 15px;font-family:inherit;font-size:11px;font-weight:650;transition:background .18s,box-shadow .18s;display:inline-flex}.danger-action:hover:not(:disabled){box-shadow:var(--filter-hover);background:#912018}.danger-action:disabled{opacity:.45;cursor:default}.auto-review-banner{color:var(--attention);margin:12px 0;font-size:13px;line-height:1.5}.auto-review-banner>strong{margin-bottom:4px;display:block}.auto-review-banner__facts{gap:2px;margin-top:8px;display:grid}.payment-attention-banner{background:var(--attention-bg);padding:10px 12px}.report-intro{color:var(--muted);justify-content:space-between;margin:-17px 0 22px;font-size:11px;display:flex}.report-intro p{margin:0}.live-indicator{background:var(--sage);border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.report-metrics p .delta{letter-spacing:0;font-size:10px}.report-grid{grid-template-columns:1.7fr .8fr;gap:15px;margin-bottom:15px;display:grid}.revenue-chart-card,.source-card{min-height:330px}.chart-legend{color:var(--muted);gap:13px;font-size:9px;display:flex}.chart-legend i{background:var(--sage);vertical-align:middle;width:14px;height:2px;margin-right:4px;display:inline-block}.chart-legend span:last-child i{background:var(--sage)}.revenue-chart{grid-template-columns:30px 1fr;height:240px;padding:20px;display:grid}.y-axis{color:var(--muted);flex-direction:column;justify-content:space-between;padding-bottom:20px;font-size:8px;display:flex}.chart-area{margin-left:8px;position:relative}.grid-line{border-top:1px dashed var(--sand);position:absolute;left:0;right:0}.grid-line--1{top:0}.grid-line--2{top:33%}.grid-line--3{top:66%}.chart-columns{justify-content:space-around;align-items:end;display:flex;position:absolute;inset:0 0 20px}.chart-columns i{background:linear-gradient(to top,rgba(var(--ink-2-rgb),.16),rgba(var(--ink-2-rgb),.03));border-top:2px solid var(--sage);width:7%}.line-chart-current{position:absolute;inset:0 0 20px}.line-chart-current span{background:var(--sage);z-index:2;border-radius:50%;width:6px;height:6px;position:absolute;transform:translate(-3px,3px)}.x-axis{color:var(--muted);justify-content:space-between;font-size:8px;display:flex;position:absolute;bottom:0;left:0;right:0}.donut{background:conic-gradient(var(--sage) 0 65%,var(--ink) 65% 90%,var(--sage) 90%);border-radius:50%;place-items:center;width:135px;height:135px;margin:22px auto;display:grid}.donut:before{content:"";background:#fff;border-radius:50%;width:88px;height:88px;position:absolute}.donut>div{text-align:center;flex-direction:column;display:flex;position:relative}.donut strong{font-family:Georgia,serif;font-size:23px;font-weight:400}.donut span{color:var(--muted);font-size:9px}.source-legend{padding:0 20px 20px}.source-legend div{justify-content:space-between;padding:5px 0;font-size:10px;display:flex}.source-legend span{color:var(--muted)}.source-legend small{color:var(--muted);margin-left:3px;font-weight:400}.report-grid--bottom{grid-template-columns:1fr 1fr}.rank-list{padding:5px 20px 15px}.rank-list>div{border-bottom:1px solid var(--paper);grid-template-columns:25px 1fr 70px 95px;align-items:center;gap:9px;min-height:52px;font-size:10px;display:grid}.rank-list>div>span{color:var(--muted);font-family:var(--font-geist-mono)}.rank-list div div{flex-direction:column;gap:3px;display:flex}.rank-list small{color:var(--muted);font-size:9px}.rank-list>div>i{background:var(--paper);height:4px}.rank-list>div>i b{background:var(--sage);height:100%;display:block}.retention{padding:24px}.retention-number{text-align:center;margin-bottom:28px}.retention-number strong{font-family:Georgia,serif;font-size:38px;font-weight:400;display:block}.retention-number span{color:var(--muted);font-size:10px}.retention-bars>div{grid-template-columns:65px 1fr 25px;align-items:center;gap:9px;margin:10px 0;font-size:10px;display:grid}.retention-bars i{background:var(--paper);height:7px}.retention-bars b{background:var(--sage);height:100%;display:block}.retention-bars div:nth-child(2) b{background:var(--sage)}.retention>p{background:var(--sage-pale);color:var(--sage);text-align:center;margin:25px 0 0;padding:11px;font-size:9px}@media (max-width:1100px){.public-header nav{display:none}.shop-grid{grid-template-columns:repeat(2,1fr)}.market-hero{grid-template-columns:60% 40%}.market-hero__copy{padding-left:50px}.shop-banner__details dl{gap:18px}.metric-grid{grid-template-columns:repeat(2,1fr)}.services-admin-grid{grid-template-columns:1fr}.service-admin-card{grid-template-columns:190px 1fr}.report-grid{grid-template-columns:1.3fr .8fr}}@media (max-width:820px){.public-header{height:65px;padding:0 20px}.header-actions .text-button,.language-button{display:none}.dark-button{padding:0 13px;font-size:11px}.market-hero{display:block}.market-hero__copy{padding:75px 28px}.market-hero__visual{min-height:470px}.hero-card{left:25px}.market-section{padding:75px 24px}.how-section{grid-template-columns:1fr;gap:35px;padding:70px 30px}.site-footer{grid-template-columns:1fr}.site-footer>span{grid-column:1}.shop-banner__details{grid-template-columns:75px 1fr;padding:24px 20px}.shop-badge{width:70px;height:70px}.shop-banner__details dl{border-top:1px solid #ffffff1f;grid-column:1/-1;justify-content:space-between;width:100%;padding-top:18px}.booking-layout{grid-template-columns:1fr;gap:0;padding:35px 20px 70px}.booking-summary{display:none}.admin-sidebar{width:calc(62vw / var(--admin-zoom,1));min-width:160px;transform:translate(-100%)}.admin-sidebar__close{display:grid}.admin-workspace{margin-left:0}.admin-topbar{padding:0 18px}.mobile-menu{background:0 0;border:0;flex-direction:column;justify-content:center;gap:3px;width:28px;height:30px;margin-right:12px;display:flex}.mobile-menu i{background:var(--ink);width:16px;height:1px}.sidebar-toggle{display:none}.admin-app--mobile-open .admin-sidebar{transform:translate(0)}.admin-sidebar__backdrop{z-index:29;background:rgba(var(--ink-rgb),.48);cursor:pointer;border:0;display:block;position:fixed;inset:0}.admin-app--collapsed .admin-sidebar{width:calc(62vw / var(--admin-zoom,1));min-width:160px;padding:0 17px}.admin-app--collapsed .admin-sidebar__close{display:grid}.admin-app--collapsed .admin-workspace{margin-left:0}.dashboard-grid,.report-grid,.report-grid--bottom{grid-template-columns:minmax(0,1fr)}.card-heading{flex-wrap:wrap;gap:10px}.settings-layout{grid-template-columns:1fr}.settings-nav{flex-direction:row;position:static;overflow:auto}.settings-nav a{white-space:nowrap;border-bottom:2px solid #0000;border-left:0}.settings-nav a.active{border-bottom-color:var(--sage)}.payment-summary-grid,.report-metrics{grid-template-columns:repeat(2,1fr)}.payments-table-card{overflow:auto}.payments-toolbar,.payments-head,.payment-row{min-width:750px}.availability-stats{overflow:auto}.availability-stats>div{white-space:nowrap}.utilization{display:none!important}}@media (max-width:560px){.brand{font-size:18px}.brand-mark{width:24px;height:24px}.dark-button{display:none}.market-hero__copy{padding:65px 20px}.market-hero h1{font-size:65px}.market-hero__lede{font-size:15px}.search-box{grid-template-columns:30px 1fr;height:auto;padding:7px;display:grid}.search-box input{height:45px}.search-box button{grid-column:1/-1;height:44px}.trust-row{flex-wrap:wrap}.market-hero__visual{min-height:370px}.market-hero__visual:before{width:80%;left:10%}.hero-card{bottom:28px}.section-heading{align-items:start;gap:20px}.section-heading>a{white-space:nowrap;font-size:11px}.shop-grid{grid-template-columns:1fr}.shop-card__image{height:330px}.site-footer>div{flex-wrap:wrap}.shop-header__actions>span,.shop-header__actions>strong{display:none}.shop-banner__art{height:120px}.shop-banner__details dl{grid-template-columns:1fr 1fr;display:grid}.booking-layout{padding-left:14px;padding-right:14px}.booking-progress button{flex-direction:column;gap:5px;font-size:9px}.booking-progress>i{margin:0 7px}.panel-heading h2{font-size:33px}.service-option{grid-template-columns:63px 1fr auto 16px;gap:11px;padding:9px}.service-swatch{width:63px;height:72px}.service-swatch:before{left:6px}.service-swatch i{left:14px}.service-price{font-size:12px}.date-row{gap:4px}.date-row button{height:58px}.slot-grid{grid-template-columns:repeat(2,1fr)}.payment-box{grid-template-columns:1fr}.qr-placeholder{border-right:0;border-bottom:1px solid var(--line)}.shop-grid{gap:30px}.admin-content{padding:25px 14px 60px}.admin-topbar>span,.help-button{display:none}.admin-page-heading{align-items:start;gap:15px}.admin-page-heading h1{font-size:27px}.admin-heading-actions{flex-wrap:wrap;justify-content:flex-end}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{min-height:120px;padding:14px}.metric-card>strong{font-size:23px}.metric-card--alert a{display:none}.appointment{grid-template-columns:42px 1px 1fr 20px;padding:10px}.appointment .status,.appointment .staff{display:none}.card-heading{padding:15px}.performance-table{overflow:auto}.table-head,.table-row{min-width:550px}.availability-stats{padding:0 10px}.availability-stats>div{padding-right:13px}.service-admin-card{grid-template-columns:1fr}.service-admin-art{height:160px}.configuration-banner{grid-template-columns:40px 1fr}.configuration-banner a{grid-column:2}.payment-summary-grid,.report-metrics{grid-template-columns:1fr 1fr;gap:8px}.payment-summary-grid article,.report-metrics article{padding:14px}.form-row{grid-template-columns:1fr;gap:0}.settings-section{padding:17px}.cover-art:before{left:20px}.cover-art:after{right:20px}.hours-list>div{grid-template-columns:34px 75px 1fr 20px 1fr auto}.hours-list input{width:100%}.report-intro{gap:15px}.rank-list>div{grid-template-columns:25px 1fr 60px}.rank-list>div>i{display:none}}.demo-mode-banner{background:var(--line);color:var(--ink);border-bottom:1px solid var(--sand);justify-content:center;align-items:center;gap:12px;padding:10px 20px;font-size:11px;display:flex}.demo-mode-banner strong{text-transform:uppercase;letter-spacing:.1em;font-size:9px}.booking-error{border-left:3px solid var(--sage);background:var(--line);color:var(--ink);margin-bottom:20px;padding:13px 15px;font-size:12px;line-height:1.5}.booking-notice{border-left:3px solid var(--sage);background:var(--sage-pale);color:var(--ink);margin-bottom:20px;padding:13px 15px;font-size:12px;line-height:1.5}.loading-state,.empty-slots{border:1px solid var(--line);background:var(--paper);min-height:100px;color:var(--ink-2);place-items:center;font-size:12px;display:grid}.admin-login-page{background:var(--paper);grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.admin-login-brand{background:var(--ink);color:var(--paper);flex-direction:column;justify-content:space-between;padding:55px clamp(35px,7vw,100px);display:flex;position:relative;overflow:hidden}.admin-login-brand:before,.admin-login-brand:after{content:"";border:25px solid rgba(var(--paper-rgb),.2);border-radius:50%;position:absolute}.admin-login-brand:before{width:420px;height:420px;top:12%;right:-200px}.admin-login-brand:after{width:220px;height:220px;bottom:-80px;left:-100px}.admin-login-brand>div{z-index:2;max-width:520px;position:relative}.admin-login-brand .eyebrow{color:var(--sand)}.admin-login-brand h1{letter-spacing:-.055em;margin:0 0 22px;font-family:Georgia,serif;font-size:clamp(52px,6vw,88px);font-weight:400;line-height:.95}.admin-login-brand p:last-child{color:var(--line);max-width:440px;font-size:17px;line-height:1.6}.admin-login-brand>span{z-index:2;color:var(--sand);text-transform:uppercase;letter-spacing:.12em;font-size:13px;position:relative}.admin-login-panel{place-items:center;padding:35px;display:grid}.admin-login-card{background:var(--paper);border:1px solid var(--line);width:min(420px,100%);box-shadow:0 22px 70px rgba(var(--ink-rgb),.12);padding:38px}.admin-login-card h2{margin:0 0 10px;font-family:Georgia,serif;font-size:38px;font-weight:400}.admin-login-card>p:not(.eyebrow):not(.auth-error){color:var(--ink-2);font-size:15px;line-height:1.55}.demo-notice{background:var(--line);border-left:3px solid var(--sage);flex-direction:column;gap:5px;margin:22px 0;padding:13px;font-size:13px;display:flex}.demo-notice span{color:var(--ink-2);line-height:1.45}.line-login-button{background:var(--sage);width:100%;height:50px;color:var(--paper);cursor:pointer;border:0;margin-top:20px;font-weight:700}.line-login-button:hover{background:var(--sage-dark)}.line-login-button:disabled{background:var(--sand);cursor:not-allowed}.auth-error{background:var(--line);color:var(--ink);padding:10px;font-size:11px}.preview-link{text-align:center;color:var(--sage);margin:18px 0;font-size:13px;font-weight:650;text-decoration:underline;display:block}.admin-login-card>small{border-top:1px solid var(--line);color:var(--ink-2);padding-top:18px;font-size:11px;line-height:1.5;display:block}.admin-login-panel{position:relative}.admin-login-lang{z-index:5;position:absolute;top:22px;right:24px}@media (max-width:820px){.admin-login-page{grid-template-columns:1fr}.admin-login-brand{min-height:360px;padding:35px}.admin-login-panel{padding:28px 18px}.demo-mode-banner{flex-direction:column;align-items:flex-start;gap:4px}}.admin-data-state{background:var(--paper);border:1px solid var(--line);min-height:120px;color:var(--ink-2);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:28px;font-size:12px;display:flex}.admin-data-state strong{color:var(--ink);font-family:Georgia,serif;font-size:16px;font-weight:400}.admin-data-state button{background:var(--sage);color:var(--paper);cursor:pointer;border:0;margin-top:5px;padding:9px 14px;font-size:11px}.admin-data-state--error{border-left:3px solid var(--sage)}.admin-live-panel{min-height:280px}.admin-quick-links{grid-template-columns:1fr 1fr;gap:10px;padding:12px;display:grid}.admin-quick-links a{background:var(--paper);border:1px solid var(--line);flex-direction:column;gap:6px;min-height:82px;padding:16px;display:flex}.admin-quick-links strong{font-size:12px}.admin-quick-links span{color:var(--ink-2);font-size:10px}.shop-live-card dl{margin:0;padding:12px 20px}.shop-live-card dl div{border-bottom:1px solid var(--line);justify-content:space-between;padding:10px 0;font-size:11px;display:flex}.shop-live-card dt{color:var(--ink-2)}.shop-live-card dd{text-transform:capitalize;margin:0;font-weight:650}.shop-live-card>a{color:var(--sage);margin:10px 20px 20px;font-size:11px;font-weight:650;display:block}.report-scope-note{padding:24px}.report-scope-note h2{margin:0 0 8px;font-family:Georgia,serif;font-size:19px;font-weight:400}.report-scope-note p{color:var(--ink-2);margin:0;font-size:12px;line-height:1.55}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.resource-count{color:var(--ink-2);font-size:10px}.resource-hours{background:var(--line);color:var(--ink);flex-wrap:wrap;gap:8px;padding:12px 18px;font-size:10px;display:flex}.resource-hours span{border:1px solid var(--sand);background:var(--paper);padding:4px 7px}.resource-bookings>div{border-bottom:1px solid var(--line);grid-template-columns:95px 1fr auto;align-items:center;gap:12px;min-height:65px;padding:12px 18px;display:grid}.resource-bookings time{color:var(--ink);font-size:11px;font-weight:650}.resource-bookings div div{flex-direction:column;gap:4px;display:flex}.resource-bookings strong{font-size:11px}.resource-bookings div div span{color:var(--ink-2);font-size:10px}.manual-blocks{background:var(--paper);color:var(--ink-2);flex-direction:column;gap:6px;padding:12px 18px;font-size:10px;display:flex}.manual-blocks strong{color:var(--ink)}.payment-reference-field{background:var(--paper);border:1px solid var(--line);margin-top:15px;padding:15px}.settings-save{width:100%;min-height:44px}.service-admin-actions>span{color:var(--ink-2);font-size:10px}.logs-card{overflow:hidden}.logs-intro{border-bottom:1px solid var(--line);align-items:center;min-height:54px;padding:16px 20px;display:flex}.logs-intro h2{margin:0;font-family:Georgia,serif;font-size:17px;font-weight:400}.logs-head,.log-row{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,1fr) minmax(0,.7fr);align-items:center;gap:14px;padding-inline:20px;display:grid}.logs-head{background:var(--paper);border-bottom:1px solid var(--line);min-height:36px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:9px}.log-row{border-bottom:1px solid var(--paper);min-height:68px;padding-block:14px;font-size:11px}.log-row:last-child{border-bottom:0}.log-actor{align-items:center;gap:10px;min-width:0;display:flex}.log-actor i{background:var(--sage-pale);width:30px;height:30px;color:var(--sage);border-radius:50%;flex:none;place-items:center;font-size:9px;font-style:normal;font-weight:700;display:grid}.log-actor strong,.log-action,.log-target strong{overflow-wrap:anywhere}.log-action{flex-direction:column;gap:5px;min-width:0;font-size:11px;font-weight:650;display:flex}.log-changes{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.log-changes li{color:var(--muted);overflow-wrap:anywhere;font-size:10px;font-weight:400;line-height:1.4}.log-change-arrow{background:var(--sage-pale);color:var(--sage-dark);border-radius:2px;padding:0 .35em;font-weight:700;line-height:1.25;display:inline-block}.log-target,.log-row time{flex-direction:column;gap:4px;min-width:0;display:flex}.log-target small,.log-row time small{color:var(--muted);font-size:9px}.log-target strong{font-size:10px;font-weight:600}.log-row time span{font-size:10px}.logs-load-error{border-top:1px solid var(--line);color:var(--danger);text-align:center;padding:12px 20px;font-size:11px}.logs-load-more{border-top:1px solid var(--line);justify-content:center;padding:15px 20px;display:flex}.logs-load-more button{border:1px solid var(--sand);min-width:110px;min-height:34px;color:var(--sage);cursor:pointer;background:#fff;font-size:11px;font-weight:650}.logs-load-more button:disabled{opacity:.55;cursor:wait}@media (max-width:820px){.resource-grid,.admin-quick-links{grid-template-columns:1fr}}.resource-selector{border:1px solid var(--line);margin:0 0 16px;padding:14px}.resource-selector legend{color:var(--ink);padding:0 6px;font-size:11px;font-weight:700}.resource-selector>p{color:var(--ink-2);margin:0 0 10px;font-size:10px;line-height:1.45}.resource-selector label{border-top:1px solid var(--line);cursor:pointer;flex-direction:row;align-items:center;gap:10px;margin:0;padding:9px 0;display:flex}.resource-selector input{width:16px;height:16px;accent-color:var(--sage)}.resource-selector label span{flex-direction:column;gap:2px;display:flex}.resource-selector label strong{color:var(--ink);font-size:11px}.resource-selector label small{color:var(--ink-2);text-transform:capitalize;font-size:10px}.booking-error a{color:var(--ink-2);font-weight:700;text-decoration:underline}.link-danger{color:var(--danger);cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:650}.link-danger:disabled{opacity:.5;cursor:default}.team-table .payment-row>span{font-size:10px}.team-actions{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.team-actions button{cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-size:10px;font-weight:650;line-height:1.3}.team-actions button:disabled{opacity:.5;cursor:default}.team-actions .link-resend{color:var(--sage)}.modal-hint{color:var(--muted);margin:0 0 14px;font-size:10px;line-height:1.5}.error-alert-backdrop{z-index:101}.error-alert-modal{width:min(380px,100vw - 30px)}.error-alert-modal h2{margin:0 0 15px}.error-alert-modal .modal-hint{border-left:3px solid var(--danger);color:var(--ink);margin:0 0 22px;padding-left:13px;font-size:12px;line-height:1.5}.block-dates-table .payments-head,.block-dates-table .payment-row{grid-template-columns:1.1fr .9fr .9fr .9fr 1.3fr 74px}.block-dates-table .payment-row>span,.block-dates-table .payment-created strong{font-size:10px}.coupons-table .payments-head,.coupons-table .payment-row{grid-template-columns:.85fr 1.4fr .7fr .75fr .75fr .6fr .65fr .8fr 74px}.coupons-table .payment-row>span,.coupons-table .payment-created strong{font-size:10px}.coupon-code{font-family:var(--font-geist-mono);letter-spacing:.04em;overflow-wrap:anywhere;font-size:11px;font-weight:650}.coupon-delete-reason{color:var(--muted);font-size:9px;line-height:1.35}.payment-state--coupon-active{color:#2e7d32;background:#e6f4ea}.payment-state--coupon-scheduled{color:#8a5a00;background:#fdf3d0}.payment-state--coupon-expired,.payment-state--coupon-exhausted{color:#1c1b1f;background:#e9e7e4}.coupon-code-input{font-family:var(--font-geist-mono);text-transform:uppercase}.instructor-locked,.coupon-locked{text-align:center;flex-direction:column;align-items:center;gap:7px;padding:34px 24px;display:flex}.instructor-locked strong,.coupon-locked strong{font-size:13px}.instructor-locked span,.coupon-locked span{max-width:420px;color:var(--muted);font-size:11px;line-height:1.6}.profile-modal-backdrop{inset:0;top:var(--vv-top,0);height:var(--vv-height,100dvh);z-index:120;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:rgba(var(--ink-rgb),.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:center;align-items:center;display:flex;position:fixed;bottom:auto;overflow-y:auto}.customer-profile-modal{background:var(--paper);border:1px solid var(--sand);border-radius:var(--radius-lg);width:min(480px,100%);max-width:100%;box-shadow:0 28px 90px rgba(var(--ink-rgb),.28);flex:none;margin:auto;padding:34px;position:relative;overflow:visible}.customer-profile-page{width:min(560px,100% - 28px);box-shadow:none;border:0;margin:22px auto 0}@media (max-width:560px){.customer-profile-page{margin-top:14px}}.customer-profile-identity{flex-direction:column;align-items:center;gap:10px;margin:2px 0 24px;display:flex}.customer-profile-identity__avatar{border:1px solid var(--line);background:var(--sage-pale);width:74px;height:74px;color:var(--sage);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:26px;display:grid;overflow:hidden}.customer-profile-identity__avatar img{object-fit:cover;width:100%;height:100%}.customer-profile-identity>strong{text-align:center;overflow-wrap:anywhere;font-size:15px;font-weight:650}.customer-profile-modal .mybookings-close{width:44px;height:44px}.customer-profile-modal h2{margin:0 0 10px;font-family:Georgia,serif;font-size:32px;font-weight:400}.customer-profile-modal>p:not(.eyebrow):not(.auth-error){color:var(--muted);margin:0 0 24px;font-size:12px;line-height:1.55}.customer-profile-modal label{color:var(--ink-2);flex-direction:column;gap:7px;margin-bottom:15px;font-size:10px;font-weight:650;display:flex}.customer-profile-modal input,.customer-profile-modal select{box-sizing:border-box;border:1px solid var(--sand);border-radius:var(--radius-md);width:100%;min-width:0;max-width:100%;height:44px;color:var(--ink);background:#fff;outline:none;padding:0 12px;font-size:16px}.customer-profile-modal input[type=date]{appearance:none;text-align:left;align-self:stretch;inline-size:100%;min-inline-size:0;max-inline-size:100%;display:block}.customer-profile-modal input[type=date]::-webkit-date-and-time-value{text-align:left;line-height:44px}.customer-profile-modal .primary-action{width:100%;margin-top:7px}.customer-profile-modal>small{color:var(--muted);text-align:center;margin-top:15px;font-size:9px;line-height:1.5;display:block}.customer-members-table .payments-head,.customer-members-table .payment-row{grid-template-columns:minmax(0,1.35fr) 82px minmax(0,.8fr) minmax(0,1.15fr) minmax(0,.65fr) minmax(0,.8fr) minmax(0,.72fr) minmax(0,.7fr) minmax(0,.8fr);gap:10px;padding-inline:14px}.member-wallet-balance{white-space:nowrap;min-width:0;font-size:11px}.customer-members-table .payment-row>span{overflow-wrap:anywhere;min-width:0;font-size:11px}.customer-member-identity,.customer-member-identity>span{min-width:0}.customer-member-identity strong{overflow-wrap:anywhere}.customer-member-identity>i{position:relative;overflow:hidden}.customer-member-identity>i img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.members-page-heading{margin-bottom:12px}.members-page-heading h2{margin:0 0 4px;font-family:Georgia,serif;font-size:16px;font-weight:400}.members-search{box-sizing:border-box;border:1px solid var(--sand);border-radius:var(--radius-md);width:min(260px,100%);min-height:36px;color:var(--ink);background:#fff;outline:none;margin-top:8px;padding:0 12px;font-size:11px}.members-search:focus{border-color:var(--sage)}.members-empty-filter{color:var(--ink-2);text-align:center;padding:24px;font-size:12px}.member-tier-label{border:1px solid var(--sand);background:var(--paper);width:max-content;min-width:82px;color:var(--ink);text-transform:capitalize;padding:6px 9px;font-size:10px;font-weight:700}.member-tier-select{width:max-content;min-width:82px;color:var(--ink);text-transform:capitalize;cursor:pointer;background:0 0;border:0;outline:none;padding:6px 0;font-size:10px;font-weight:700}.member-tier-select:disabled{opacity:.55;cursor:wait}.member-tier-label--guest{border-color:var(--tier-guest-border);background:var(--tier-guest-bg);color:var(--tier-guest-fg)}.member-tier-label--member{border-color:var(--tier-member-border);background:var(--tier-member-bg);color:var(--tier-member-fg)}.member-tier-icon{box-sizing:border-box;vertical-align:middle;width:16px;height:16px;font-family:var(--font-sans);text-transform:uppercase;border:1px solid #0000;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.member-tier-icon--guest{background:var(--tier-guest-bg);color:var(--tier-guest-fg);border-color:var(--tier-guest-border)}.member-tier-icon--member{background:var(--tier-member-bg);color:var(--tier-member-fg);border-color:var(--tier-member-border)}@media (max-width:560px){.profile-modal-backdrop{padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.customer-profile-modal{padding:16px 18px}.customer-profile-modal>.eyebrow{margin-bottom:8px;font-size:9px}.customer-profile-modal h2{margin-bottom:8px;font-size:26px;line-height:1.08}.customer-profile-modal label{gap:4px;margin-bottom:9px}.customer-profile-modal .primary-action{min-height:48px;margin-top:4px}.customer-profile-modal .cancel-hold{min-height:44px;margin-top:4px}.customer-profile-modal .auth-error{margin:4px 0;padding:8px}}.theme-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.theme-option{border:1px solid var(--sand);cursor:pointer;text-align:left;background:#fff;flex-direction:column;gap:10px;padding:12px;transition:border .2s,box-shadow .2s;display:flex}.theme-option:hover{border-color:var(--sage)}.theme-option.selected{border-color:var(--sage);box-shadow:inset 0 0 0 1px var(--sage)}.theme-swatches{border:1px solid var(--line);border-radius:3px;height:34px;display:flex;overflow:hidden}.theme-swatches i{flex:1}.theme-option__name{color:var(--ink);font-size:12px;font-weight:650}.slot-interval-bar{border:1px solid var(--line);background:#fff;grid-template-columns:1fr auto auto;align-items:center;gap:14px;margin-bottom:15px;padding:16px 18px;display:grid}.slot-interval-bar strong{font-size:13px}.slot-interval-bar p{color:var(--muted);margin:4px 0 0;font-size:10px}.slot-interval-bar input{box-sizing:border-box;border:1px solid var(--sand);border-radius:var(--radius-md);width:90px;min-height:36px;color:var(--ink);background:#fff;outline:none;padding:0 12px;font-size:11px}.service-admin-list{flex-direction:column;gap:10px;display:flex}.service-admin-row{border:1px solid var(--line);background:#fff;grid-template-columns:26px 92px minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px;display:grid}.service-admin-row.dragging{opacity:.5;border-color:var(--sage)}.drag-handle{cursor:grab;background-image:radial-gradient(var(--sand) 1.4px, transparent 1.5px);background-position:50%;background-size:6px 7px;width:18px;height:28px}.drag-handle:active{cursor:grabbing}.service-row-art{background:var(--sage);place-items:center;width:92px;height:92px;display:grid;position:relative;overflow:hidden}.service-row-art img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.service-row-art span{color:#fff;font-family:Georgia,serif;font-size:21px}.service-row-body{min-width:0}.service-row-head{flex-direction:column;gap:4px;display:flex}.service-row-tag{color:var(--sage);letter-spacing:.1em;font-size:9px;font-weight:700}.service-row-body h2{margin:0;font-family:Georgia,serif;font-size:16px;font-weight:400}.service-row-body>p{color:var(--muted);margin:8px 0 10px;font-size:11px;line-height:1.5;overflow:hidden}.service-row-body dl{gap:28px;margin:0;display:flex}.service-row-body dt{color:var(--muted);margin-bottom:3px;font-size:9px}.service-row-body dd{margin:0;font-size:11px;font-weight:650}.service-row-actions{flex-direction:column;align-items:flex-end;gap:12px;display:flex}.secondary-action{justify-content:center;align-items:center;display:inline-flex}.service-edit{flex-direction:column;gap:15px;max-width:720px;display:flex}.service-edit .back-link{margin-bottom:0}.service-image-editor{align-items:center;gap:18px;display:flex}.service-image-preview{background:var(--sage);flex:none;place-items:center;width:120px;height:120px;display:grid;position:relative;overflow:hidden}.service-image-preview img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.service-image-preview span{color:#fff;font-family:Georgia,serif;font-size:29px}.service-image-controls{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.service-image-controls label{cursor:pointer;margin:0}.service-image-controls input{display:none}.service-image-controls small{color:var(--muted);font-size:10px}.settings-section .service-image-editor{margin-bottom:24px}.image-hint{color:var(--muted);font-size:10px}.service-image-controls .image-unsaved{color:var(--sage-dark);font-size:10px;font-weight:650}.shop-badge,.summary-shop>span,.shop-initial{position:relative;overflow:hidden}.shop-badge img,.summary-shop>span img,.shop-initial img{object-fit:cover;border-radius:50%;width:100%;height:100%;position:absolute;inset:0}.overview-side{flex-direction:column;gap:15px;display:flex}.metric-breakdown{border-top:1px solid var(--line);flex-direction:column;gap:6px;margin:0;padding-top:10px;display:flex}.metric-breakdown dt{color:var(--muted);letter-spacing:.1em;margin-bottom:2px;font-size:10px;font-weight:700}.metric-breakdown>div{justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;display:flex}.metric-breakdown>div+div{border-top:1px solid var(--line);padding-top:6px}.metric-breakdown>div>span:first-child{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.metric-breakdown>div>span:last-child{white-space:nowrap;font-weight:650}.today-availability{flex-direction:column;padding:6px 20px 18px;display:flex}.today-availability__row{border-bottom:1px solid var(--line);grid-template-columns:160px 1fr;align-items:center;gap:16px;padding:13px 0;display:grid}.today-availability__row:last-child{border-bottom:0}.today-availability__row>strong{font-size:13px}.today-availability__slots{flex-wrap:wrap;gap:6px;display:flex}.today-availability__slots i{background:var(--sage-pale);color:var(--sage-dark);border-radius:12px;padding:5px 10px;font-size:13px;font-style:normal}.today-availability__none{color:var(--muted);margin:0;font-size:12px}.today-service{border-bottom:1px solid var(--line);padding:13px 0}.today-service:last-child{border-bottom:0}.today-service__head{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.today-service__head strong{font-size:14px}.today-service__head span{color:var(--muted);font-size:11px}.today-slot-grid{grid-template-columns:repeat(auto-fill,minmax(62px,1fr));gap:6px;display:grid}.slot-legend{color:var(--muted);flex-wrap:wrap;gap:8px 18px;margin-bottom:12px;font-size:11px;display:flex}.slot-legend span{align-items:center;gap:6px;display:flex}.legend-dot{border-radius:3px;width:11px;height:11px;display:inline-block}.legend-dot--available{background:var(--sage-pale);border:1px solid var(--sage)}.legend-dot--partial{background:var(--sage)}.legend-dot--booked{background:var(--ink)}.legend-dot--unavailable{background:var(--line);border:1px solid var(--muted)}.slot-chip{border:1px solid var(--line);justify-content:center;align-items:center;height:32px;font-size:13px;font-style:normal;font-weight:600;display:flex;position:relative}.slot-chip--available{background:var(--paper);color:var(--ink);border-color:var(--sage)}.slot-chip--partial{background:var(--sage);color:#fff;border-color:var(--sage);cursor:default}.slot-chip--booked{background:var(--ink);color:#fff;border-color:var(--ink);cursor:default}.slot-chip--unavailable{background:var(--cream);color:var(--muted);border-color:var(--line);opacity:.7;cursor:default}.slot-tip{z-index:30;background:var(--ink);max-width:300px;color:var(--paper);letter-spacing:.02em;box-shadow:0 6px 18px rgba(var(--ink-rgb),.3);pointer-events:none;padding:5px 8px;font-size:10px;font-weight:500;display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.slot-tip__line{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.slot-tip__line+.slot-tip__line{margin-top:3px}.slot-chip--booked:hover .slot-tip,.slot-chip--partial:hover .slot-tip{display:block}.overview-calendar{--overview-hour:64px;--overview-row:34px;--overview-tip:112px;margin-bottom:15px}.overview-calendar__filters{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.overview-calendar__empty{color:var(--muted);margin:0;padding:18px 20px;font-size:12px}.overview-calendar__state{padding:14px 20px}.overview-calendar__scroll{padding-bottom:var(--overview-tip);overflow:auto hidden}.overview-calendar__grid{grid-template-columns:158px minmax(min-content,1fr);min-width:min-content;display:grid}.overview-calendar__corner,.overview-calendar__service,.overview-calendar__row-label{z-index:2;position:sticky;left:0}.overview-calendar__corner,.overview-calendar__row-label{background:#fff}.overview-calendar__corner{border-bottom:1px solid var(--line)}.overview-calendar__axis{border-bottom:1px solid var(--line);min-height:26px;display:flex}.overview-calendar__axis .overview-calendar__hour{align-items:flex-end;padding:0 0 3px 4px;display:flex}.overview-calendar__axis span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:9px}.overview-calendar__hour{flex:1 0 var(--overview-hour);border-left:1px solid var(--line);font-style:normal}.overview-calendar__hour:first-child{border-left:0}.overview-calendar__service{border-top:1px solid var(--line);background:var(--paper);flex-direction:column;justify-content:center;gap:1px;min-width:0;padding:7px 12px;display:flex}.overview-calendar__service strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.overview-calendar__service span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:9px}.overview-calendar__service--inactive strong{color:var(--muted);font-style:italic}.overview-calendar__band{border-top:1px solid var(--line);background:var(--paper);display:flex;position:relative}.overview-calendar__row-label{border-top:1px solid var(--line);align-items:center;min-width:0;padding:0 12px 0 26px;display:flex}.overview-calendar__row-label span{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-calendar__row-label--inactive span{color:var(--muted);font-style:italic}.overview-calendar__row{min-height:var(--overview-row);border-top:1px solid var(--line);display:flex;position:relative}.overview-calendar__open{background:var(--success);display:block;position:absolute;top:0;bottom:0}@supports (color:color-mix(in lab, red, red)){.overview-calendar__open{background:color-mix(in srgb, var(--success) 12%, transparent)}}.overview-calendar__open{pointer-events:none}.overview-calendar__block{box-sizing:border-box;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;padding:0 3px;font-size:9px;line-height:1.2;display:flex;position:absolute}.overview-calendar__block strong{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:700;overflow:hidden}.overview-calendar__block--free{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.overview-calendar__block--free{background:color-mix(in srgb, var(--success) 18%, transparent)}}.overview-calendar__block--free{border-color:var(--success)}.overview-calendar__block--partial{background:var(--warning);border-color:var(--warning);color:#fff;box-shadow:0 1px 3px rgba(var(--ink-rgb),.25)}.overview-calendar__block--full{background:var(--attention);border-color:var(--attention);color:#fff;box-shadow:0 1px 3px rgba(var(--ink-rgb),.25)}.overview-calendar__block .slot-tip{top:calc(100% + 6px);bottom:auto}.overview-calendar__block:hover .slot-tip{display:block}@media (max-width:560px){.overview-calendar{--overview-hour:52px}.overview-calendar__grid{grid-template-columns:118px minmax(min-content,1fr)}.overview-calendar__row-label{padding-left:16px}.service-admin-row{grid-template-columns:64px minmax(0,1fr);gap:12px}.service-admin-row .service-row-art{width:64px;height:64px}.service-admin-row .drag-handle{display:none}.service-row-actions{flex-direction:row;grid-column:1/-1;justify-content:space-between;align-items:center}.slot-interval-bar{grid-template-columns:1fr auto}.slot-interval-bar>div{grid-column:1/-1}.service-image-editor{flex-direction:column;align-items:flex-start}.today-availability__row{grid-template-columns:1fr;gap:6px}}.platform-stores-table{max-width:100%;overflow-x:auto}.platform-stores-table .payments-head,.platform-stores-table .payment-row{grid-template-columns:minmax(0,1.35fr) 76px 58px 58px minmax(0,1fr) 72px minmax(104px,.65fr);gap:12px;min-width:0}.store-plan-select{width:78px;min-height:32px;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:6px 4px;font-size:10px;font-weight:650}.store-plan-select:focus-visible{outline:2px solid var(--sage);outline-offset:2px}.store-plan-select:disabled{opacity:.55;cursor:wait}.store-group-select{width:100%;min-width:0;max-width:150px;min-height:32px;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:6px 4px;font-size:10px;font-weight:650}.store-group-select:focus-visible{outline:2px solid var(--sage);outline-offset:2px}.store-group-select:disabled{opacity:.55;cursor:wait}.gateway-toggle-row{background:var(--paper);border:1px solid var(--sand);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-bottom:18px;padding:14px 15px;display:grid}.gateway-toggle-copy strong{color:var(--ink-2);font-size:11px;display:block}.gateway-toggle-copy p{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.5}.admin-modal .gateway-switch{cursor:pointer;flex-direction:row;align-items:center;gap:8px;margin:0;display:flex}.admin-modal .gateway-switch input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gateway-switch-track{background:var(--line);border-radius:13px;width:42px;height:24px;padding:2px;transition:background .2s;display:block}.gateway-switch-track i{background:var(--paper);width:20px;height:20px;box-shadow:0 1px 4px rgba(var(--ink-rgb),.25);border-radius:50%;transition:transform .2s;display:block}.gateway-switch-state{min-width:28px;color:var(--muted);font-size:10px;font-weight:700}.gateway-switch-state-on{color:var(--sage);display:none}.gateway-switch input:checked+.gateway-switch-track{background:var(--sage)}.gateway-switch input:checked+.gateway-switch-track i{transform:translate(18px)}.gateway-switch input:checked~.gateway-switch-state .gateway-switch-state-on{display:inline}.gateway-switch input:checked~.gateway-switch-state .gateway-switch-state-off{display:none}.gateway-switch input:focus-visible+.gateway-switch-track{outline:2px solid var(--sage);outline-offset:3px}.store-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px 12px;display:flex}.store-row-actions button{color:var(--sage);cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:650}.store-row-actions button:disabled{opacity:.5;cursor:default}.store-row-actions .store-open-action{text-decoration:underline}.store-row-actions .store-gateway-action--locked:disabled{color:var(--muted);cursor:not-allowed}.store-status{justify-content:center;align-items:center;width:100%;display:flex}.platform-stores-table .payments-head span:nth-child(3),.platform-stores-table .payments-head span:nth-child(4),.platform-stores-table .store-service-count{text-align:center}.store-status-toggle{font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.store-status-toggle:disabled{opacity:.55;cursor:wait}.store-status-toggle-track{background:var(--muted);border-radius:11px;width:34px;height:20px;padding:2px;transition:background .2s;display:block}.store-status-toggle-track i{width:16px;height:16px;box-shadow:0 1px 4px rgba(var(--ink-rgb),.25);background:#fff;border-radius:50%;transition:transform .2s;display:block}.store-status-toggle--active .store-status-toggle-track{background:var(--sage)}.store-status-toggle--active .store-status-toggle-track i{transform:translate(14px)}.store-status-toggle:focus-visible{outline:2px solid var(--sage);outline-offset:3px}@media (max-width:820px){.platform-stores-table{padding:10px;overflow-x:visible}.platform-stores-table .payments-head{display:none}.platform-stores-table .payment-row{border:1px solid var(--line);background:var(--cream);grid-template-columns:minmax(0,1fr) auto 32px;gap:10px;min-width:0;min-height:0;margin-bottom:10px;padding:14px}.platform-stores-table .payment-row:last-child{margin-bottom:0}.platform-stores-table .payment-row>span:nth-child(6){display:none}.platform-stores-table .payment-customer,.platform-stores-table .payment-customer span{min-width:0}.platform-stores-table .payment-customer strong,.platform-stores-table .payment-customer small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.platform-stores-table .store-plan-select{width:92px;min-height:44px;padding-inline:8px}.platform-stores-table .store-service-count{text-align:left;grid-column:1/-1;align-items:center;gap:7px;min-height:44px;display:flex}.platform-stores-table .store-service-count:before{content:attr(data-label);color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:650}.platform-stores-table .store-group-select{grid-column:1/-1;min-width:0;max-width:none;min-height:44px}.platform-stores-table .store-status,.platform-stores-table .store-status-toggle{min-height:44px}.platform-stores-table .store-row-actions{border-top:1px solid var(--line);grid-column:1/-1;justify-content:flex-start;gap:6px;padding-top:10px}.platform-stores-table .store-row-actions button{min-height:44px;padding:0 10px}}.platform-members-table .payments-head,.platform-members-table .payment-row{grid-template-columns:1.5fr .9fr 1.1fr .8fr}.platform-report-table .payments-head,.platform-report-table .payment-row{grid-template-columns:1.8fr .8fr 1fr}.platform-report-table .num{text-align:right;font-variant-numeric:tabular-nums}.platform-report-total{border-top:2px solid var(--line);background:var(--paper)}.platform-report-total strong{font-size:11px}.report-tabs{width:max-content;margin:0 0 12px}.platform-report-group-table .payments-head,.platform-report-group-table .payment-row{grid-template-columns:1.6fr .7fr .8fr 1fr}.platform-groups__head-actions{align-items:center;gap:14px;display:flex}.platform-groups__head-actions .admin-primary{white-space:nowrap}.platform-groups{flex-direction:column;display:flex}.platform-group{border-bottom:1px solid var(--line);padding:16px 20px}.platform-group:last-child{border-bottom:0}.platform-group--ungrouped{background:var(--paper)}.platform-group__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.platform-group__actions{align-items:center;gap:16px;display:inline-flex}.platform-group__head strong{font-size:13px}.platform-group__head small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.platform-group__head .link-danger{flex:none}.platform-group__stores{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.platform-group__store{border:1px solid var(--line);background:#fff;flex-direction:column;gap:3px;min-width:120px;padding:8px 12px;display:flex}.platform-group__store strong{font-size:11px}.platform-group__store small{color:var(--muted);font-size:9px}.platform-group__empty{color:var(--muted);margin-top:10px;font-size:10px}.auth-form{flex-direction:column;gap:13px;margin-top:6px;display:flex}.auth-form label{color:var(--ink-2);letter-spacing:.03em;flex-direction:column;gap:6px;font-size:12px;font-weight:650;display:flex}.auth-form label>small{color:var(--muted);letter-spacing:0;font-size:11px;font-weight:400;display:inline}.auth-form input{border:1px solid var(--sand);width:100%;color:var(--ink);background:#fff;outline:none;padding:11px 12px;font-size:15px}.auth-form input:focus{border-color:var(--sage)}.auth-form .line-login-button{margin-top:7px}.auth-link-button{width:100%;color:var(--sage);text-align:center;cursor:pointer;background:0 0;border:0;margin-top:14px;padding:0;font-size:13px;font-weight:650;display:block}.auth-link-button:hover{text-decoration:underline}.auth-input{display:block;position:relative}.auth-input-icon{color:var(--muted);pointer-events:none;display:flex;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.auth-input input{padding-left:40px}.auth-input--toggle input{padding-right:44px}.auth-input-toggle{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:6px;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.auth-input-toggle:hover{color:var(--ink)}.auth-input-toggle:focus-visible{outline:1px solid var(--sage);outline-offset:1px}.admin-login-card--lg .eyebrow{font-size:15px}.admin-login-card--lg .auth-form label{font-size:14px}.admin-login-card--lg .auth-form label>small{font-size:13px}.admin-login-card--lg .auth-form input{padding:13px 14px;font-size:16px}.admin-login-card--lg .auth-input-icon{left:14px}.admin-login-card--lg .auth-input input{padding-left:44px}.admin-login-card--lg .auth-input--toggle input{padding-right:48px}.admin-login-card--lg .auth-input-toggle{right:8px}.admin-login-card--lg .line-login-button{height:54px;font-size:17px}.admin-login-card--lg .auth-error{font-size:15px}.admin-login-card--lg .auth-invite-summary span{font-size:13px}.admin-login-card--lg .auth-invite-summary strong{font-size:17px}.admin-login-card--lg .auth-invite-summary small{font-size:15px}.admin-login-card--lg>small{font-size:13px}.admin-login-card--lg .auth-link-button{font-size:15px}.auth-divider{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:12px;margin:24px 0 4px;font-size:11px;font-weight:650;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}.auth-invite-summary{background:var(--paper);border-left:3px solid var(--sage);flex-direction:column;gap:6px;margin:20px 0;padding:15px 16px;display:flex}.auth-invite-summary span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.auth-invite-summary strong{word-break:break-word;font-size:15px}.manual-booking-card{max-width:760px}.manual-booking-card .card-heading{align-items:center}.manual-booking-body{flex-direction:column;gap:18px;padding:20px;display:flex}.manual-field{color:var(--ink-2);letter-spacing:.03em;flex-direction:column;gap:6px;font-size:11px;font-weight:650;display:flex}.manual-field>span{color:var(--ink-2)}.manual-field select,.manual-field input[type=date]{box-sizing:border-box;border:1px solid var(--sand);border-radius:var(--radius-md);width:100%;min-height:36px;color:var(--ink);background:#fff;outline:none;padding:0 12px;font-size:11px}.manual-field select:focus,.manual-field input[type=date]:focus{border-color:var(--sage)}.manual-field select:disabled,.manual-field input:disabled{background:var(--paper);color:var(--muted);cursor:not-allowed}.manual-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234d5a2e' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:9px;padding-right:26px}.manual-field>small{color:var(--muted);letter-spacing:0;font-size:10px;font-weight:400;line-height:1.5}.manual-customer-search{box-sizing:border-box;border:1px solid var(--sand);border-radius:var(--radius-md);width:100%;min-height:36px;color:var(--ink);background:#fff;outline:none;padding:0 12px;font-size:11px}.manual-customer-search:focus{border-color:var(--sage)}.manual-customer-results{border:1px solid var(--sand);border-top:0;flex-direction:column;max-height:260px;display:flex;overflow-y:auto}.manual-customer-option{text-align:left;border:0;border-bottom:1px solid var(--paper);cursor:pointer;background:#fff;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:7px 10px;display:flex}.manual-customer-option:last-child{border-bottom:0}.manual-customer-option:hover,.manual-customer-option:focus-visible{background:var(--paper);outline:none}.manual-customer-option strong{color:var(--ink);font-size:12px;font-weight:650}.manual-customer-option small{color:var(--muted);letter-spacing:0;font-size:10px;font-weight:400}.manual-customer-empty{color:var(--muted);letter-spacing:0;padding:12px;font-size:11px;font-weight:400}.manual-customer-selected{border:1px solid var(--sand);background:var(--paper);justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.manual-customer-selected strong{color:var(--ink);font-size:12px;font-weight:650;display:block}.manual-customer-selected small{color:var(--muted);letter-spacing:0;margin-top:2px;font-size:10px;font-weight:400;display:block}.manual-error-text{color:var(--danger);font-size:11px;font-weight:400}.manual-slot-grid{grid-template-columns:repeat(auto-fill,minmax(78px,1fr))}.manual-slot-grid button{flex-direction:column;justify-content:center;align-items:center;gap:2px;line-height:1.05;display:flex}.manual-slot-grid button.full small{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:9px}.reschedule-modal .reschedule-current{color:var(--ink-2);margin:0 0 18px;font-size:13px;line-height:1.5}.reschedule-modal .reschedule-current strong{color:var(--ink)}.reschedule-modal .reschedule-current small{color:var(--muted);font-size:12px}.reschedule-modal .manual-field{margin-bottom:18px}.reschedule-modal .danger-action{margin-top:10px}.slot-grid button.current{border-color:var(--sage);color:var(--ink-2);opacity:1}.slot-grid button.current small{letter-spacing:.08em;text-transform:uppercase;color:var(--sage);font-size:9px}.manual-booking-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.manual-countdown{background:var(--sage-pale);color:var(--sage);white-space:nowrap;border-radius:10px;padding:5px 11px;font-size:11px;font-weight:700}.manual-countdown--expired{background:var(--line);color:var(--danger)}.manual-summary{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;margin:0;display:grid}.manual-summary>div{background:#fff;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.manual-summary dt{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.manual-summary dd{margin:0;font-size:14px;font-weight:650}.manual-slip-upload{border:1px dashed var(--sand);background:var(--paper);cursor:pointer;color:var(--ink-2);align-items:center;gap:12px;padding:16px;font-size:13px;display:flex}.manual-slip-upload input{display:none}.manual-slip-button{border:1px solid var(--sand);min-height:35px;color:var(--ink);background:#fff;border-radius:2px;flex:none;align-items:center;padding:0 15px;font-size:11px;font-weight:650;display:inline-flex}.manual-cancel-booking{border:1px solid var(--danger);min-height:35px;color:var(--danger);cursor:pointer;background:#fff;border-radius:2px;padding:0 15px;font-size:11px;font-weight:650}.manual-cancel-booking:disabled{opacity:.5;cursor:default}.manual-outcome{border-left:3px solid var(--sage);background:var(--paper);padding:16px;font-size:14px;line-height:1.55}.manual-outcome p{margin:0}.manual-outcome a{color:var(--sage);font-weight:650}.manual-outcome--review{border-left-color:var(--sand)}.manual-back-link{margin-bottom:14px}.bookings-table .payments-head,.bookings-table .payment-row{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.9fr) minmax(0,.75fr) minmax(0,.75fr) minmax(0,.65fr) minmax(0,.9fr) minmax(86px,108px);gap:12px}.bookings-table .payment-row>span:first-child,.bookings-table .booking-created,.bookings-table .payment-row>span:nth-child(2){flex-direction:column;gap:3px;display:flex}.group-slots{border-top:1px solid var(--paper);flex-direction:column;gap:2px;margin-top:5px;padding-top:5px;display:flex}.group-slot{color:var(--ink-2);font-size:9px;line-height:1.35}.group-slot--current{color:var(--ink)}.group-slot--cancelled{color:var(--muted);text-decoration:line-through}.booking-row-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.booking-row-actions button{cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:650}.booking-row-actions .row-link{color:var(--sage)}.booking-row-actions .row-cancel{color:var(--danger)}.booking-row-actions .row-cancel:disabled{opacity:.5;cursor:default}.payment-state--confirmed{color:#2e7d32;background:#e6f4ea}.payment-state--completed{color:var(--sage);background:var(--sage-pale)}.payment-state--payment_submitted{color:#8a5a00;background:#fdf3d0}.payment-state--held{color:var(--muted);background:var(--paper)}.payment-state--cancelled,.payment-state--refunded{color:#b3261e;background:#fce8e6}.payment-state--expired,.payment-state--no_show{color:var(--muted);background:var(--paper)}.payment-state--icon{cursor:default;border-radius:50%;justify-content:center;width:22px;height:22px;padding:0}.payment-state--icon:before{width:8px;height:8px}.payment-status-badge{cursor:default;border-radius:11px;width:max-content;min-width:0;padding:5px 10px;font-size:9px;font-weight:650}.payment-status-badge:before{display:none}.payment-status-badge.payment-state--verified{color:#2e7d32;background:#e6f4ea}.payment-status-badge.payment-state--rejected,.payment-status-badge.payment-state--refunded{color:#fff;background:#b3261e}.payment-status-badge.payment-state--pending,.payment-status-badge.payment-state--submitted,.payment-status-badge.payment-state--verifying{color:#1c1b1f;background:#fdf3d0}.table-daterange,.store-header-filter,.table-statusfilter,.filter-field{--filter-accent:linear-gradient(90deg,var(--sage) 0%,var(--sand) 100%)}@supports (color:color-mix(in lab, red, red)){.table-daterange,.store-header-filter,.table-statusfilter,.filter-field{--filter-accent:linear-gradient(90deg,var(--sage) 0%,color-mix(in srgb,var(--sand) 45%,var(--ink)) 100%)}}.table-daterange,.store-header-filter,.table-statusfilter,.filter-field{--filter-ring:0 0 0 4px rgba(var(--ink-2-rgb),.15);--filter-rest:0 1px 2px rgba(var(--ink-rgb),.05);--filter-hover:0 8px 24px rgba(var(--ink-rgb),.09);--filter-lift:0 10px 26px rgba(var(--ink-rgb),.14)}.filter-field{box-sizing:border-box;border:1px solid var(--line);min-width:0;min-height:34px;color:var(--muted);box-shadow:var(--filter-rest);background:#fff;border-radius:11px;align-items:center;gap:7px;padding:0 11px;transition:border-color .18s,box-shadow .18s,color .18s;display:inline-flex;position:relative}.filter-field:hover{border-color:rgba(var(--ink-2-rgb),.34);box-shadow:var(--filter-hover)}.filter-field:focus-within{outline-offset:2px;border-color:var(--sage);box-shadow:var(--filter-ring);outline:2px solid #0000}.filter-field input{min-width:0;height:32px;color:var(--ink);background:0 0;border:0;outline:none;flex:auto;padding:0;font-family:inherit;font-size:10px}.filter-field input[type=date]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.filter-field .checkbox-select,.filter-field .date-picker{position:static}.filter-icon{flex:none;display:block;position:relative}.filter-icon--calendar{border:1px solid;border-radius:2px;width:11px;height:11px}.filter-icon--calendar:before{content:"";border-top:1px solid;position:absolute;top:2px;left:-1px;right:-1px}.filter-icon--calendar:after{content:"";background:currentColor;width:1px;height:3px;position:absolute;top:-3px;left:1px;box-shadow:5px 0}:is(.table-daterange,.table-statusfilter,.store-header-filter) .checkbox-select__panel{border:1px solid var(--line);background-color:#fff;background-image:var(--filter-accent);min-width:190px;box-shadow:0 14px 34px rgba(var(--ink-rgb),.13), 0 2px 6px rgba(var(--ink-rgb),.06);text-transform:none;letter-spacing:normal;background-position:0 0;background-repeat:no-repeat;background-size:100% 3px;border-radius:12px;gap:1px;padding:9px 6px 6px;font-weight:400}:is(.table-daterange,.table-statusfilter,.store-header-filter) .checkbox-select__option{border-radius:8px;min-height:30px;padding:5px 9px;font-size:11px;transition:background .15s}:is(.table-daterange,.table-statusfilter,.store-header-filter) .checkbox-select__option:hover{background:rgba(var(--ink-2-rgb),.08)}:is(.table-daterange,.table-statusfilter,.store-header-filter) .checkbox-select__option[aria-selected=true]:hover{background:var(--sage-pale)}.table-daterange{align-items:center;gap:12px;margin-left:auto;display:flex;position:relative}.table-daterange label{min-width:0;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:7px;font-size:9px;font-weight:650;display:flex}.table-daterange__label{flex:none}.table-daterange .filter-field{flex:auto}.table-daterange__field{min-width:172px;padding:0 11px 0 9px}.table-daterange .checkbox-select{width:100%;min-width:0;display:block}.table-daterange__select.checkbox-select__trigger{width:100%;min-height:32px;color:var(--ink);letter-spacing:normal;text-transform:none;box-shadow:none;background:0 0;border:0;border-radius:0;gap:6px;padding:0;font-size:10px;font-weight:400}.table-daterange__select.checkbox-select__trigger:hover:not(:disabled){color:var(--ink);box-shadow:none;border-color:#0000}.table-daterange__select.checkbox-select__trigger:focus-visible{box-shadow:none;outline:none}.table-daterange input[type=date]{color:var(--ink);background:0 0;border:0;height:32px;padding:0;font-family:inherit;font-size:10px}.daterange-popover{z-index:41;border:1px solid var(--line);background-color:#fff;background-image:var(--filter-accent);min-width:250px;box-shadow:0 14px 34px rgba(var(--ink-rgb),.13), 0 2px 6px rgba(var(--ink-rgb),.06);background-position:0 0;background-repeat:no-repeat;background-size:100% 3px;border-radius:12px;flex-direction:column;gap:11px;padding:12px;display:flex;position:absolute;top:calc(100% + 6px);left:0}.daterange-popover__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.daterange-popover label{flex-direction:column;align-items:stretch;gap:5px}.daterange-popover .filter-field{width:100%;min-width:0}.daterange-popover .daterange-clear{align-self:flex-start}.daterange-clear{color:var(--sage);cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:650}.daterange-clear:disabled{opacity:.45;cursor:default}.table-filters{align-items:center;gap:14px;display:flex}.table-filters .table-daterange{margin-left:0}.table-filter-card{margin-bottom:15px}.table-filter-card .payments-toolbar{border-bottom:0;min-width:0}.table-filter-card .table-daterange{margin-left:0}.table-filter-card .table-filters{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.table-statusfilter{min-width:0;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:7px;font-size:9px;font-weight:650;display:flex}.table-statusfilter__label{flex:none}.table-statusfilter .filter-field{flex:auto;min-width:140px;padding:0 11px 0 9px}.table-statusfilter .checkbox-select{width:100%;min-width:0;display:block}.table-statusfilter .checkbox-select__trigger{width:100%;min-height:32px;color:var(--ink);letter-spacing:normal;text-transform:none;box-shadow:none;background:0 0;border:0;border-radius:0;gap:6px;padding:0;font-size:10px;font-weight:400}.table-statusfilter .checkbox-select__trigger:hover:not(:disabled){color:var(--ink);box-shadow:none;border-color:#0000}.table-statusfilter .checkbox-select__trigger:focus-visible{box-shadow:none;outline:none}.table-statusfilter .filter-field:focus-within{border-color:var(--sage);box-shadow:var(--filter-ring)}.table-statusfilter select{border:1px solid var(--sand);color:var(--ink);cursor:pointer;background:#fff;height:30px;padding:0 6px;font-family:inherit;font-size:10px}.date-carousel--strip{flex-direction:column;min-width:0}.bookings-toolbar{flex-wrap:wrap;gap:14px;padding:14px 17px}.bookings-toolbar .date-carousel{flex:100%;min-width:0;margin-bottom:0}.admin-date-carousel{flex-direction:column;align-items:stretch;gap:12px;min-width:0}.admin-date-carousel .date-jump-row{align-items:center;gap:12px;display:flex}.admin-date-carousel .date-jump-row .filter-field{flex:none}@media (max-width:820px){.bookings-toolbar .admin-date-carousel .date-jump-row{flex-direction:column;align-items:stretch;gap:10px}.bookings-toolbar .admin-date-carousel .date-jump-row>.filter-field{flex:auto;width:100%}.bookings-toolbar .admin-date-carousel .date-jump-row .table-statusfilter{width:100%;max-width:100%}.bookings-toolbar .admin-date-carousel .date-jump-row .table-statusfilter .filter-field{width:100%;min-width:0}}.admin-date-carousel .date-jump{width:auto;min-width:7.5rem;box-shadow:none;height:32px;color:var(--ink);background:0 0;border:0;padding:0;font-family:inherit;font-size:10px}.date-carousel .date-strip{scrollbar-width:thin;flex-wrap:nowrap;flex:none;grid-template-columns:none;gap:8px;min-width:0;padding-bottom:4px;display:flex;overflow:auto hidden}.date-carousel .date-strip button{flex:0 0 68px;height:60px}.admin-date-carousel .date-strip button{border-radius:var(--radius-md)}.date-carousel .date-strip button strong{margin:2px 0;font-size:17px}@media (max-width:560px){.admin-date-carousel .date-strip button{flex:0 0 50px;height:44px}.admin-date-carousel .date-strip button strong{margin:1px 0;font-size:15px}.admin-date-carousel .date-strip button span,.admin-date-carousel .date-strip button small{font-size:8px}.admin-date-carousel .date-jump-row{gap:8px}.admin-date-carousel .date-jump{height:28px}}.overview-toolbar{border:1px solid var(--line);background:#fff;flex-direction:column;align-items:stretch;gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}.overview-toolbar h2{margin:0;font-family:Georgia,serif;font-size:16px;font-weight:400}.overview-toolbar .date-carousel{min-width:0;margin-bottom:0}.table-export{border:1px solid var(--sand);color:var(--ink);cursor:pointer;background:#fff;height:30px;padding:0 12px;font-family:inherit;font-size:10px;font-weight:650}.table-export:hover:not(:disabled){border-color:var(--sage);color:var(--sage)}.table-export:disabled{opacity:.45;cursor:default}.table-pager{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:12px;padding:14px 18px;font-size:10px;display:flex}.table-pager span{color:var(--muted)}.table-pager button{border:1px solid var(--sand);color:var(--ink);cursor:pointer;background:#fff;padding:6px 12px;font-size:10px;font-weight:650}.table-pager button:disabled{opacity:.45;cursor:default}.payment-row--highlight{background:var(--sage-pale);box-shadow:inset 3px 0 0 var(--sage)}.payment-row--attention{background:var(--attention-bg);box-shadow:inset 3px 0 0 var(--attention)}.payment-row--attention.payment-row--highlight{background:var(--sage-pale);box-shadow:inset 3px 0 0 var(--sage)}.auth-invite-summary small{color:var(--ink-2);font-size:13px}.settings-section__actions{border-top:1px solid var(--line);justify-content:flex-end;margin-top:26px;padding-top:18px;display:flex}.settings-section__actions .settings-save{width:auto;min-width:96px;min-height:32px;padding:0 14px}.error-page{background:var(--cream);place-items:center;min-height:100vh;padding:40px 24px;display:grid}.error-panel{text-align:center;flex-direction:column;align-items:center;max-width:460px;display:flex}.error-panel .brand{margin-bottom:34px}.error-panel h1{letter-spacing:-.04em;color:var(--ink);margin:0 0 16px;font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,6vw,50px);font-weight:400;line-height:1.02}.error-panel p{color:var(--ink-2);margin:0 0 30px;font-size:15px;line-height:1.6}.error-panel .dark-button{text-decoration:none}.error-actions{align-items:center;gap:20px;display:flex}.error-actions .error-link{color:var(--ink-2);text-underline-offset:3px;font-size:13px;font-weight:650;text-decoration:underline}html[lang=th] body,html[lang=th] :is(input,select,textarea,button){font-family:var(--font-thai), var(--font-sans)}html[lang=th] :is(.market-hero h1,.hero-card strong,.section-heading h2,.how-section h2,.shop-card h3,.site-footer>p,.mybookings-head h2,.shop-badge,.panel-heading h2,.service-option__copy strong,.summary-shop>span,.date-row button strong,.note-mark,.payment-recipient>strong,.success-view h2,.confirmation-card>strong,.shop-initial,.admin-page-heading h1,.metric-card>strong,.metric-icon--alert,.card-heading h2,.appointment time strong,.pulse-total>strong,.overview-toolbar h2,.service-admin-art>span,.service-admin-title h2,.admin-modal h2,.settings-heading h2,.payment-summary-grid strong,.report-metrics strong,.review-drawer h2,.donut strong,.retention-number strong,.admin-login-brand h1,.admin-login-card h2,.admin-data-state strong,.report-scope-note h2,.customer-profile-modal h2,.service-row-art span,.service-row-body h2,.service-image-preview span,.error-panel h1,.landing-hero h1,.landing-section__head h2,.landing-plan h3,.landing-plan__price strong,.landing-cta h2){font-family:var(--font-thai), Georgia, "Times New Roman", serif}html[lang=th] :is(.brand,.admin-label,.current-shop,.current-shop button,.admin-profile,.admin-profile button,.admin-sidebar__close,.shop-banner__details .eyebrow,.shop-banner__details p,.lang-toggle,.lang-toggle button,.shop-account__avatar){font-family:var(--font-sans)}html[lang=th] .shop-banner__details h1{font-family:Georgia,serif}.admin-select{background:var(--paper);min-height:100vh;color:var(--ink)}.admin-select__header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:18px clamp(24px,4vw,48px);display:flex}.admin-select__header>div{align-items:center;gap:12px;display:flex}.admin-select__body{max-width:1200px;margin:auto;padding:clamp(28px,4vw,56px) clamp(24px,4vw,48px)}.admin-select__title{letter-spacing:-.03em;margin:2px 0 28px;font-family:Georgia,serif;font-size:32px;font-weight:400}.admin-select__columns{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:28px;display:grid}.admin-select__col>h2{margin:0 0 4px;font-family:Georgia,serif;font-size:20px;font-weight:400}.admin-select__col>p{color:var(--muted);margin:0 0 16px;font-size:13px}.admin-select-grid{gap:12px;display:grid}.admin-select-card{text-align:left;border:1px solid var(--sand);width:100%;color:var(--ink);cursor:pointer;background:#fff;grid-template-columns:52px 1fr;align-items:center;gap:15px;padding:15px;text-decoration:none;transition:border .2s,box-shadow .2s,transform .2s;display:grid}.admin-select-card:hover{border-color:var(--sage);box-shadow:inset 0 0 0 1px var(--sage);transform:translateY(-2px)}.admin-select-card:disabled{opacity:.55;cursor:default;box-shadow:none;transform:none}.admin-select-card__badge{background:var(--sage-pale);width:52px;height:52px;color:var(--sage);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:17px;display:grid;position:relative;overflow:hidden}.admin-select-card__badge img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.admin-select-card__body{flex-direction:column;gap:4px;min-width:0;display:flex}.admin-select-card__body strong{font-family:Georgia,serif;font-size:16px;font-weight:400}.admin-select-card__body small{color:var(--muted);font-size:13px}.current-shop--link{color:inherit;text-decoration:none}.store-header-filter{align-items:center;gap:6px;min-width:0;max-width:100%;display:inline-flex}.store-header-filter .checkbox-select{vertical-align:baseline;flex:0 6 auto;min-width:0;display:inline-flex}.store-header-filter__label{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.store-header-filter__select.checkbox-select__trigger{border:1px solid var(--line);width:auto;min-width:0;min-height:22px;color:var(--muted);font:inherit;letter-spacing:inherit;text-transform:inherit;white-space:nowrap;box-shadow:var(--filter-rest);background:#fff;border-radius:11px;gap:4px;padding:0 8px;transition:color .18s,border-color .18s,background .18s,box-shadow .18s}.store-header-filter__select.checkbox-select__trigger:before{content:"";clip-path:polygon(0 0,100% 0,62% 44%,62% 100%,38% 80%,38% 44%);background:currentColor;flex:none;width:9px;height:9px}.store-header-filter__select.checkbox-select__trigger:hover:not(:disabled){color:var(--ink);border-color:rgba(var(--ink-2-rgb),.34);box-shadow:var(--filter-hover)}.store-header-filter__select.checkbox-select__trigger:focus-visible{outline-offset:2px;border-color:var(--sage);box-shadow:var(--filter-ring);outline:2px solid #0000}.store-header-filter .checkbox-select[data-open=true] .store-header-filter__select.checkbox-select__trigger{border-color:var(--sage);box-shadow:var(--filter-ring)}.store-header-filter:not(.store-header-filter--active) .checkbox-select__value{display:none}.store-header-filter__select .checkbox-select__value{max-width:96px}.store-header-filter__select .checkbox-select__caret{border-color:currentColor;width:5px;height:5px;margin-left:0}.group-logs-table.logs-card{overflow:visible}.group-breakdown .payments-head,.group-breakdown .payment-row{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr)}.all-overview-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.85fr);align-items:start;gap:15px;margin-bottom:15px;display:grid}@media (max-width:820px){.all-overview-grid{grid-template-columns:minmax(0,1fr)}}.group-shop-picker{border:1px solid var(--line);background:#fff;gap:2px;margin-bottom:20px;padding:6px;display:flex;overflow:auto}.group-shop-picker button{white-space:nowrap;min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 14px;font-size:11px;font-weight:650}.group-shop-picker button.active{color:var(--sage);background:var(--sage-pale);border-bottom-color:var(--sage)}.group-section-actions{justify-content:flex-end;margin-bottom:15px;display:flex}.settings-nav button{text-align:left;width:100%;color:var(--muted);cursor:pointer;background:0 0;border:0;border-left:2px solid #0000;padding:11px 12px;font-size:11px}.settings-nav button.active{color:var(--sage);background:var(--sage-pale);border-left-color:var(--sage);font-weight:650}.admin-cell-stack{flex-direction:column;gap:3px;display:flex}.log-store{min-width:0}.log-store strong{overflow-wrap:anywhere}.group-list-notice{border:1px solid var(--sand);background:var(--paper);color:var(--muted);margin:0 14px 14px;padding:10px 13px;font-size:10px;line-height:1.5}.group-bookings-table .payments-head,.group-bookings-table .payment-row{grid-template-columns:minmax(0,.85fr) minmax(0,1.1fr) minmax(0,.9fr) minmax(0,.85fr) minmax(0,.75fr) minmax(0,.75fr) minmax(0,.65fr) minmax(0,.75fr) minmax(96px,108px);gap:12px}.group-payments-table .payments-head,.group-payments-table .payment-row{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1.35fr) minmax(0,.85fr) minmax(0,.65fr) minmax(0,.7fr) minmax(0,.75fr) 56px;gap:12px}.group-members-table .customer-members-table .payments-head,.group-members-table .customer-members-table .payment-row{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr) 82px minmax(0,.75fr) minmax(0,1.05fr) minmax(0,.6fr) minmax(0,.75fr) minmax(0,.7fr);gap:10px}.group-logs-table .logs-head,.group-logs-table .log-row{grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1.35fr) minmax(0,1fr) minmax(0,.7fr)}:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table){min-width:0;max-width:100%}:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table)>.payments-table{width:100%;min-width:0;max-width:100%}:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) :is(.payments-head,.payment-row)>*{overflow-wrap:anywhere;min-width:0;max-width:100%}:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) .payment-customer,:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) .payment-customer>span{min-width:0}:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) .payment-state{white-space:normal;max-width:100%}:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) .booking-row-actions{flex-wrap:wrap;min-width:0}@media (max-width:1100px){:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) .payments-toolbar{min-width:0;min-height:0;padding:10px 12px}:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) .table-filters{flex-wrap:wrap;justify-content:flex-start;gap:10px;width:100%;min-width:0;margin-left:0}:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) .table-daterange{flex-wrap:wrap;gap:8px;min-width:0;max-width:100%;margin-left:0}:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) .table-pager{flex-wrap:wrap;justify-content:center;min-width:0}.table-filter-card .payments-toolbar{min-height:0;padding:10px 12px}.table-filter-card .table-filters{gap:10px;width:100%;min-width:0}.table-filter-card .table-daterange{flex-wrap:wrap;gap:8px;min-width:0;max-width:100%}.table-filter-card .table-statusfilter{min-width:0;max-width:100%}}@media (max-width:820px){.bookings-table .payments-table,.group-bookings-table .payments-table,.payments-list-card .payments-table,.topups-list-card .payments-table,.group-payments-table .payments-table,.customer-members-table{gap:0 10px;display:grid}.bookings-table .payments-table{grid-template-columns:repeat(8,max-content)}.group-bookings-table .payments-table{grid-template-columns:repeat(9,max-content)}.payments-list-card .payments-table{grid-template-columns:repeat(7,max-content)}.topups-list-card .payments-table{grid-template-columns:repeat(6,max-content)}.group-payments-table .payments-table{grid-template-columns:repeat(8,max-content)}.customer-members-table{grid-template-columns:repeat(9,max-content)}.group-members-table .customer-members-table{grid-template-columns:repeat(8,max-content)}.bookings-table .payments-head,.bookings-table .payment-row,.group-bookings-table .payments-head,.group-bookings-table .payment-row,.payments-list-card .payments-head,.payments-list-card .payment-row,.topups-list-card .payments-head,.topups-list-card .payment-row,.group-payments-table .payments-head,.group-payments-table .payment-row,.customer-members-table .payments-head,.customer-members-table .payment-row,.group-members-table .customer-members-table .payments-head,.group-members-table .customer-members-table .payment-row{grid-column:1/-1;grid-template-columns:subgrid;white-space:nowrap;min-width:0}:is(.payments-list-card,.bookings-table,.group-bookings-table,.group-payments-table) .payment-subtotal-row{grid-column:1/-1;min-width:0}.logs-card{grid-template-columns:max-content minmax(180px,220px) max-content max-content;gap:0 10px;display:grid;overflow:auto}.group-logs-table.logs-card{grid-template-columns:max-content max-content minmax(180px,220px) max-content max-content;overflow:auto}.logs-list{display:contents}.logs-card>.logs-intro,.logs-card>.group-list-notice,.logs-card>.admin-data-state,.logs-card>.logs-load-error,.logs-card>.logs-load-more{grid-column:1/-1}.logs-card .logs-head,.logs-card .log-row{grid-column:1/-1;grid-template-columns:subgrid;white-space:nowrap}.log-action,.log-action strong,.log-changes,.log-changes li{white-space:normal;overflow-wrap:anywhere}}@media (max-width:560px){:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) .table-daterange,.table-filter-card .table-daterange{width:100%;min-width:0;max-width:100%;display:flex}:is(.bookings-table,.payments-list-card,.group-bookings-table,.group-payments-table) .table-daterange__field,.table-filter-card .table-daterange__field{width:100%;min-width:0}.daterange-popover{min-width:0;padding:11px;left:0;right:0}.daterange-popover__row{grid-template-columns:1fr;gap:9px}.table-daterange input[type=date],.table-daterange .date-picker,.table-daterange .date-picker__trigger{width:100%;min-width:0}.admin-modal .date-picker__panel{max-width:100%}.table-filter-card .table-filters{flex-direction:column;align-items:stretch}.table-filter-card .table-statusfilter{width:100%}.table-filter-card .table-statusfilter .filter-field{width:100%;min-width:0}}@media (max-width:820px){.admin-select__columns{grid-template-columns:1fr}.settings-nav button{white-space:nowrap;border-bottom:2px solid #0000;border-left:0}.settings-nav button.active{border-bottom-color:var(--sage)}}.landing{--landing-excluded:#b4322a;background:var(--paper);color:var(--ink)}.landing-header{z-index:30;border-bottom:1px solid var(--line);background:rgba(var(--paper-rgb),.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);align-items:center;gap:18px;height:70px;padding:0 clamp(20px,5vw,76px);display:flex;position:sticky;top:0}.landing-header__actions{align-items:center;gap:16px;margin-left:auto;display:flex}.landing-header .dark-button{white-space:nowrap;font-size:13px;text-decoration:none}.landing-hero{border-bottom:1px solid var(--line);background:var(--cream);padding:clamp(52px,8.5vw,112px) clamp(20px,5vw,76px) clamp(46px,6.5vw,88px);position:relative;overflow:hidden}.landing-hero__inner{z-index:1;max-width:1180px;margin:0 auto;position:relative}.landing-hero h1{letter-spacing:-.05em;max-width:900px;margin:0 0 22px;font-family:Georgia,Times New Roman,serif;font-size:clamp(37px,6.2vw,80px);font-weight:400;line-height:.98}.landing-hero__lede{max-width:640px;color:var(--ink-2);margin:0 0 30px;font-size:clamp(15px,1.35vw,18px);line-height:1.7}.landing-actions{flex-wrap:wrap;align-items:center;gap:13px;display:flex}.landing-actions .dark-button{min-height:50px;padding:0 25px;font-size:13px;text-decoration:none}.landing-ghost-button{border:1px solid var(--ink);min-height:50px;color:var(--ink);border-radius:2px;justify-content:center;align-items:center;padding:0 22px;font-size:13px;font-weight:650;transition:background .2s,color .2s;display:inline-flex}.landing-ghost-button:hover{background:var(--ink);color:#fff}.landing-badges{border-top:1px solid var(--line);flex-wrap:wrap;gap:11px 30px;margin:44px 0 0;padding:25px 0 0;list-style:none;display:flex}.landing-badges li{color:var(--ink-2);align-items:center;gap:9px;font-size:15px;display:flex}.landing-badges li:before{content:"";background:var(--sage);border-radius:50%;flex:none;width:5px;height:5px}.landing-section{border-bottom:1px solid var(--line);padding:clamp(54px,7.5vw,104px) clamp(20px,5vw,76px);scroll-margin-top:78px}.landing-section--tint{background:var(--sage-pale)}.landing-section__inner{max-width:1180px;margin:0 auto}.landing-section__head{max-width:740px;margin-bottom:clamp(30px,4vw,52px)}.landing-section__head h2{letter-spacing:-.042em;margin:0 0 13px;font-family:Georgia,Times New Roman,serif;font-size:clamp(29px,3.9vw,52px);font-weight:400;line-height:1.04}.landing-section__head>h2:last-child{margin-bottom:0}.landing-plans__installation{color:var(--ink-2);margin:0 0 clamp(22px,2.6vw,32px);font-size:clamp(24px,2.6vw,30px);line-height:1.6}.landing-plans__installation strong{font-weight:650}.landing-plans{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:clamp(16px,2vw,26px);display:grid}.landing-plan{border:1px solid var(--line);background:var(--paper);flex-direction:column;padding:clamp(24px,2.6vw,34px) clamp(20px,2.2vw,30px) clamp(26px,2.8vw,34px);font-weight:400;display:flex}.landing-plan--featured{border-color:var(--sage);box-shadow:inset 0 0 0 1px var(--sage)}.landing-plan__head{align-items:center;gap:12px;display:flex}.landing-plan h3{letter-spacing:-.03em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(24px,2.6vw,30px);font-weight:700}.landing-plan__tag{border:1px solid var(--sage);color:var(--sage);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;margin-left:auto;padding:4px 9px;font-size:11px;font-weight:700}.landing-plan__price{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:8px;margin:15px 0 0;padding-bottom:17px;display:flex}.landing-plan__price strong{letter-spacing:-.04em;font-family:Georgia,Times New Roman,serif;font-size:clamp(29px,3.3vw,40px);font-weight:400}.landing-plan__price>span{color:var(--muted);font-size:15px}.landing-plan__list{flex-direction:column;gap:11px;margin:21px 0 0;padding:0;list-style:none;display:flex}.landing-plan__list li{color:var(--ink-2);grid-template-columns:18px minmax(0,1fr);gap:10px;font-size:16px;line-height:1.55;display:grid}.landing-plan__mark{color:var(--sage);font-size:15px}.landing-plan__mark svg{fill:currentColor;width:14px;height:14px;margin-top:3px;display:block}.landing-plan__list li.landing-plan__list-off{color:var(--muted)}.landing-plan__list-off .landing-plan__mark{color:var(--landing-excluded)}.landing-plan__list li.landing-plan__list-lead{color:var(--ink)}.landing-plan__list li.landing-plan__list-lead .landing-plan__mark{color:var(--sage)}.landing-plan__list li.landing-plan__list-off.landing-plan__list-lead{color:var(--muted)}.landing-plan__list li.landing-plan__list-off.landing-plan__list-lead .landing-plan__mark{color:var(--landing-excluded)}.landing-plans__notes{border-top:1px solid var(--line);margin:clamp(22px,2.6vw,32px) 0 0;padding-top:21px}.landing-plans__notes p{color:var(--ink-2);margin:0;font-size:15px;line-height:1.6}.landing-plans__notes strong{font-weight:650}.landing-shots{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:clamp(18px,2.4vw,32px);display:grid}.landing-shot{border:1px solid var(--line);background:var(--paper);flex-direction:column;margin:0;display:flex}.landing-shot__frame{background:var(--cream);border-bottom:1px solid var(--line);flex:1;justify-content:center;align-items:center;padding:14px;display:flex}.landing-shot img{border:1px solid var(--line);background:#fff;width:100%;height:auto;display:block}.landing-shot--portrait .landing-shot__frame{--pair-gap:clamp(10px,1.1vw,16px);gap:var(--pair-gap)}.landing-shot--portrait img{width:auto;max-width:100%;height:clamp(210px,30vw,420px)}.landing-shot__body{padding:17px 20px 21px}.landing-shot__body strong{font-size:17px;font-weight:650;display:block}.landing-shot__body p{color:var(--muted);margin:6px 0 0;font-size:15px;line-height:1.6}.landing-cta{background:var(--ink);color:#fff;padding:clamp(52px,7.5vw,96px) clamp(20px,5vw,76px)}.landing-cta__inner{grid-template-columns:minmax(0,1.2fr) auto;align-items:center;gap:38px;max-width:1180px;margin:0 auto;display:grid}.landing-cta .eyebrow{color:var(--sand)}.landing-cta h2{color:#fff;letter-spacing:-.042em;margin:0 0 13px;font-family:Georgia,Times New Roman,serif;font-size:clamp(29px,3.9vw,50px);font-weight:400;line-height:1.05}.landing-cta p:not(.eyebrow){max-width:580px;color:var(--line);margin:0;font-size:15px;line-height:1.7}.landing-cta__actions{flex-wrap:wrap;gap:13px;display:flex}.landing-cta__button{color:#fff;white-space:nowrap;border:1px solid #ffffff61;border-radius:2px;align-items:center;gap:10px;min-height:50px;padding:0 23px;font-size:13px;font-weight:650;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.landing-cta__button:hover{background:#ffffff1a;border-color:#fff}.landing-cta__button--primary{background:var(--paper);border-color:var(--paper);color:var(--ink)}.landing-cta__button--primary:hover{background:var(--sand);border-color:var(--sand);color:var(--ink)}.landing-cta__button svg{fill:currentColor;flex:none;width:16px;height:16px}.landing-footer{border-top:1px solid var(--line);background:var(--paper);flex-wrap:wrap;align-items:center;gap:12px 24px;padding:20px clamp(20px,5vw,76px);display:flex}.landing-footer__left{color:var(--muted);align-items:center;gap:12px;font-size:12px;display:flex}.landing-footer__sep{color:var(--sand)}.landing-footer__region{align-items:center;gap:7px;display:inline-flex}.landing-footer__social{align-items:center;gap:22px;margin-left:auto;display:flex}.landing-footer__social a{color:var(--muted);align-items:center;gap:8px;font-size:12px;transition:color .2s;display:inline-flex}.landing-footer__social a:hover{color:var(--ink)}.landing-footer svg{fill:currentColor;flex:none;width:14px;height:14px}@media (max-width:1000px){.landing-cta__inner{grid-template-columns:minmax(0,1fr);gap:30px}}@media (max-width:680px){.landing-plans,.landing-shots{grid-template-columns:minmax(0,1fr)}.landing-shots{grid-auto-rows:auto}.landing-shot--portrait .landing-shot__frame{container-type:inline-size}.landing-shot--portrait img{height:calc((100cqw - var(--pair-gap) - 6px) / 2 * 844 / 390)}.landing-footer{flex-direction:column;align-items:flex-start}.landing-footer__social{margin-left:0}}@media (max-width:480px){.landing-header{gap:10px;height:62px;padding:0 16px}.landing-header .brand{font-size:18px}.landing-header .brand-mark{width:23px;height:23px}.landing-header__actions{gap:10px}.landing-header .dark-button{min-height:38px;padding:0 14px;font-size:12px}.landing-actions .dark-button,.landing-ghost-button,.landing-cta__button{width:100%}}@media (max-width:560px){.landing .dark-button{display:inline-flex}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.landing-ghost-button,.landing-cta__button,.landing-footer__social a{transition:none}}.service-hours{flex-direction:column;gap:11px;margin-bottom:14px;display:flex}.service-hours-label{color:var(--ink-2);font-size:10px;font-weight:650}.service-hours-row{grid-template-columns:1fr 1fr auto;align-items:end;gap:13px;display:grid}.service-hours-row label{margin-bottom:0}.service-hours-remove{white-space:nowrap;min-height:35px}.service-hours-add{align-self:flex-start}@media (max-width:640px){.service-hours-row{grid-template-columns:1fr 1fr}.service-hours-remove{grid-column:1/-1;justify-self:start}}.service-price-windows{flex-direction:column;gap:11px;margin-bottom:14px;display:flex}.service-price-windows>.image-hint{margin:-6px 0 0}.service-price-window-row{grid-template-columns:1.15fr 1fr 1fr 1fr auto;align-items:end;gap:13px;display:grid}.service-price-window-row label{margin-bottom:0}@media (max-width:820px){.service-price-window-row{grid-template-columns:1fr 1fr}.service-price-window-row .service-hours-remove{grid-column:1/-1;justify-self:start}}.admin-subnav{border:1px solid var(--line);background:#fff;gap:0;margin-bottom:15px;padding:9px;display:flex;overflow-x:auto}.admin-subnav button{color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:11px 12px;font-size:11px;font-weight:400}.admin-subnav button.active{color:var(--sage);background:var(--sage-pale);border-bottom-color:var(--sage);font-weight:650}.topup-candidates{border:1px solid var(--sand);flex-direction:column;max-height:210px;margin-bottom:14px;display:flex;overflow-y:auto}.topup-candidate{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.topup-candidate:last-child{border-bottom:0}.topup-candidate:hover{background:var(--paper)}.topup-candidate>span:first-child{flex-direction:column;gap:3px;min-width:0;display:flex}.topup-candidate strong{overflow-wrap:anywhere;font-size:11px}.topup-candidate small{color:var(--muted);font-size:9px}.topup-candidate__balance{color:var(--sage);white-space:nowrap;flex:none;font-size:10px;font-weight:650}.topup-chosen{background:var(--paper);border:1px solid var(--sand);grid-template-columns:1fr auto;align-items:center;gap:10px;margin-bottom:16px;padding:12px 14px;display:grid}.topup-chosen__label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;grid-column:1/-1;font-size:9px}.topup-chosen>div{flex-direction:column;gap:3px;min-width:0;display:flex}.topup-chosen strong{overflow-wrap:anywhere;font-size:12px}.topup-chosen small{color:var(--muted);font-size:9px}.topup-slip-preview{object-fit:contain;background:var(--paper);border:1px solid var(--sand);width:100%;max-height:230px;margin-bottom:14px;display:block}.wallet-adjust-current{background:var(--paper);border:1px solid var(--sand);flex-direction:column;gap:4px;margin-bottom:18px;padding:12px 14px;display:flex}.wallet-adjust-current>strong{overflow-wrap:anywhere;font-size:12px}.wallet-adjust-current>span{color:var(--muted);font-size:10px}.wallet-adjust-current>span>strong{color:var(--ink);font-size:11px}.instructor-delete{min-height:44px;margin-top:0}.instructor-upcoming-count{color:var(--ink);margin:0 0 8px;font-size:11px;font-weight:650}.instructor-upcoming{border:1px solid var(--line);max-height:210px;margin:0 0 12px;padding:0;list-style:none;overflow-y:auto}.instructor-upcoming li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,105px) minmax(0,1fr);gap:10px;padding:9px 12px;display:grid}.instructor-upcoming li:last-child{border-bottom:0}.instructor-upcoming time{color:var(--ink);flex-direction:column;gap:2px;font-size:10px;font-weight:650;line-height:1.35;display:flex}.instructor-upcoming time small{color:var(--ink-2);font-size:10px;font-weight:400}.instructor-upcoming li>div{flex-direction:column;gap:3px;min-width:0;display:flex}.instructor-upcoming strong{overflow-wrap:anywhere;font-size:11px}.instructor-upcoming li>div>span{color:var(--ink-2);overflow-wrap:anywhere;font-size:10px}.instructor-upcoming-more{color:var(--muted);margin:0 0 12px;font-size:10px}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
