.client-loader{display:none;position:fixed;inset:0;z-index:2147483000;background:var(--loader-bg,#faf7f2);color:var(--loader-ink,#302523);align-items:center;justify-content:center;pointer-events:none;transition:opacity .16s ease}
html.client-loading:before{content:'';display:block;position:fixed;inset:0;z-index:2147483000;pointer-events:none;background-color:var(--loader-bg);background-image:var(--loader-icon);background-repeat:no-repeat;background-size:100px 100px;background-position:center calc(50% - 20px);animation:client-loader-appear .18s ease}
html.client-loading:after{content:var(--loader-name) '\A\A' var(--loader-caption);white-space:pre-line;position:fixed;left:20px;right:20px;top:calc(50% + 55px);text-align:center;z-index:2147483001;color:var(--loader-ink);pointer-events:none;font:14px/1.8 system-ui,sans-serif;letter-spacing:.08em;animation:client-loader-appear .18s ease}
@keyframes client-loader-appear{from{opacity:0}to{opacity:1}}
html.client-loading .client-loader{display:flex}
.client-loader-inner{text-align:center;padding:24px;max-width:340px;font-family:inherit}
.client-loader-name{font-size:11px;letter-spacing:.2em;text-transform:uppercase;display:block}
.client-loader svg{display:block;width:100px;height:100px;margin:26px auto;stroke:var(--loader-accent,#b48666);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;animation:client-loader-breathe .8s ease-in-out infinite alternate}
.client-loader-caption{font-size:14px;display:block;line-height:1.6}
.client-loader-track{display:block;margin:22px auto 0;width:140px;height:2px;background:color-mix(in srgb,var(--loader-accent,#b48666) 18%,transparent);overflow:hidden}
.client-loader-track:after{content:'';display:block;width:40%;height:100%;background:var(--loader-accent,#b48666);animation:client-loader-progress 1s ease-in-out infinite}
@keyframes client-loader-breathe{from{transform:translateY(3px);opacity:.55}to{transform:translateY(-3px);opacity:1}}
@keyframes client-loader-progress{from{transform:translateX(-100%)}to{transform:translateX(350%)}}
@media(prefers-reduced-motion:reduce){.client-loader svg,.client-loader-track:after,html.client-loading:before,html.client-loading:after{animation:none}.client-loader{transition:none}}
.client-captcha{border:1px solid #d4cdc4;border-radius:12px;padding:24px;max-width:420px;width:calc(100% - 32px);background:#fff;color:#272421;font:16px/1.6 system-ui,sans-serif}
.client-captcha::backdrop{background:#17202c80}
.client-captcha h2{font:600 22px/1.3 system-ui,sans-serif;margin:0 0 12px}
.client-captcha label{display:block;margin:16px 0 8px}
.client-captcha input{display:block;width:100%;box-sizing:border-box;padding:12px;border:1px solid #8b8175;border-radius:6px;font:inherit}
.client-captcha button{border:1px solid #625446;background:#302523;color:white;border-radius:6px;padding:10px 18px;font:inherit;cursor:pointer}
.client-captcha button[type=button]{background:white;color:#302523}
.client-captcha-actions{display:flex;gap:12px;margin-top:20px}
.client-captcha-status{font-size:14px;min-height:1.6em;margin:12px 0 0}
.client-captcha :focus-visible{outline:3px solid #386fa5;outline-offset:3px}

/* Continuous branded motion, with a pointer-following halo. */
html.client-loading:before{background-image:var(--loader-icon),radial-gradient(circle at var(--loader-pointer-x,50%) var(--loader-pointer-y,50%),color-mix(in srgb,var(--loader-accent,#b48666) 24%,transparent),transparent 30%),radial-gradient(ellipse at center,transparent 57%,color-mix(in srgb,var(--loader-accent,#b48666) 22%,transparent) 59%,transparent 62%);background-size:100px 100px,100% 100%,180px 180px;background-position:center calc(50% - 20px),center,center calc(50% - 20px);animation:client-loader-float 1.4s ease-in-out infinite}
html.client-loading:after{padding-bottom:25px;background-image:linear-gradient(90deg,transparent,var(--loader-accent,#b48666),transparent);background-size:65px 3px;background-repeat:no-repeat;animation:client-loader-sweep 1.1s ease-in-out infinite}
@keyframes client-loader-float{0%,100%{background-position:center calc(50% - 14px),center,center calc(50% - 20px)}50%{background-position:center calc(50% - 27px),center,center calc(50% - 20px)}}
@keyframes client-loader-sweep{0%,100%{background-position:calc(50% - 60px) bottom}50%{background-position:calc(50% + 60px) bottom}}
.makt-loader::before{background:radial-gradient(circle at var(--loader-pointer-x,50%) var(--loader-pointer-y,50%),#d6a86026,transparent 40%)}
.makt-loader-icon{animation:client-loader-lift 1.3s ease-in-out infinite}
@keyframes client-loader-lift{0%,100%{transform:translateY(4px)}50%{transform:translateY(-7px)}}
@media(prefers-reduced-motion:reduce){html.client-loading:before,html.client-loading:after,.makt-loader-icon{animation:none}html.client-loading:after{background-position:center bottom}}

html{--loader-bg:#faf3ef;--loader-ink:#442f34;--loader-accent:#ad7387;--loader-name:"Seven Heaven Salon";--loader-caption:"A moment of beauty, just for you.";--loader-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20fill%3D%22none%22%20stroke%3D%22%23ad7387%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M50%2050C12%2015%2048%206%2050%2036C52%206%2088%2015%2050%2050C88%2015%2094%2051%2064%2051C94%2053%2081%2089%2050%2051C80%2089%2045%2097%2049%2065C45%2097%2011%2081%2049%2050C11%2081%205%2045%2036%2049C5%2045%2015%2012%2050%2050Z%22%2F%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2250%22%20r%3D%228%22%2F%3E%3C%2Fsvg%3E")}
