/* Booking card on profiles and the step-by-step Booking page. Loaded only there (inc/setup.php). Split out of theme.css on 6 Oct 2026. */
.bkm-wrap{flex:1 1 100%;display:flex;justify-content:center;min-height:52px}
.bkm{position:relative;overflow:hidden;width:100%;height:52px;border-radius:26px;background:var(--bg-2);box-shadow:0 0 0 1px rgba(231,201,140,.32),0 22px 50px rgba(0,0,0,.4);color:var(--ink);flex:none}
:is(.bkm,.bkw) .bkm__gold{position:absolute;inset:0;background:var(--btn-bg,var(--accent));transition:opacity .28s ease}
.bkm:not([data-state="button"]) .bkm__gold{opacity:0}
:is(.bkm,.bkw) .bkm__v{position:absolute;inset:0;margin:auto;display:flex;align-items:center;justify-content:center;opacity:0;filter:blur(6px);transform:scale(.97);pointer-events:none;transition:opacity .12s ease,filter .12s ease,transform .12s ease}
:is(.bkm,.bkw) .bkm__v.is-on{opacity:1;filter:none;transform:none;pointer-events:auto;transition-duration:.28s;transition-delay:.1s}
:is(.bkm,.bkw) .bkm__btn{all:unset;box-sizing:border-box;width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;color:var(--accent-ink);font:600 12.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;-webkit-tap-highlight-color:transparent}
:is(.bkm,.bkw) .bkm__btn svg{width:17px;height:17px;flex:none}
:is(.bkm,.bkw) .bkm__btn svg:last-child{transition:transform .35s var(--ease)}
:is(.bkm,.bkw) .bkm__btn:hover svg:last-child{transform:translateX(4px)}
.bkm[data-state="button"]:hover .bkm__gold{filter:brightness(1.08)}
:is(.bkm,.bkw) .bkm__btn:focus-visible{outline:2px solid var(--ink);outline-offset:-5px;border-radius:26px}
:is(.bkm,.bkw) .bkm__spin{width:22px;height:22px;border-radius:50%;border:2px solid rgba(231,201,140,.25);border-top-color:var(--accent-2);animation:bkm-spin .7s linear infinite}
@keyframes bkm-spin{to{transform:rotate(360deg)}}
:is(.bkm,.bkw) .bkm__check path{stroke:var(--accent-2);stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24}
:is(.bkm,.bkw) .bkm__v.is-on .bkm__check path{transition:stroke-dashoffset .45s cubic-bezier(.3,.9,.3,1) .16s;stroke-dashoffset:0}
:is(.bkm,.bkw) .bkm__pick{flex-direction:column;align-items:stretch;justify-content:flex-start;padding:20px 20px 18px;text-align:left;background:linear-gradient(180deg,rgba(231,201,140,.06),rgba(231,201,140,0) 140px)}
:is(.bkm,.bkw) .bkm__head{display:flex;justify-content:space-between;align-items:center;margin:0 0 4px}
:is(.bkm,.bkw) .bkm__title{margin:0;font-family:var(--display);font-size:27px;line-height:1.1;color:var(--ink)}
:is(.bkm,.bkw) .bkm__title em{color:var(--accent-2)}
:is(.bkm,.bkw) .bkm__close{all:unset;cursor:pointer;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:var(--muted);transition:background .2s,color .2s}
:is(.bkm,.bkw) .bkm__close svg{width:16px;height:16px}
:is(.bkm,.bkw) .bkm__close:hover,:is(.bkm,.bkw) .bkm__close:focus-visible{background:var(--surface-2);color:var(--ink)}
:is(.bkm,.bkw) .bkm__lbl{margin:14px 0 8px;font:500 10.5px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
:is(.bkm,.bkw) .bkm__only{margin:0;font-size:14px;color:var(--ink-2)}
:is(.bkm,.bkw) .bkm__lens{display:flex;flex-wrap:wrap;gap:8px}
:is(.bkm,.bkw) .bkm__lens>.bkm__len{flex:1 1 calc(33.333% - 8px);min-width:0}
:is(.bkm,.bkw) .bkm__pick>*{flex:none}
:is(.bkm,.bkw) .bkm__len{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:5px;justify-items:center;padding:11px 4px 10px;border-radius:10px;border:1px solid var(--line-2);text-align:center;color:var(--ink-2);-webkit-tap-highlight-color:transparent}
:is(.bkm,.bkw) .bkm__len span{font:400 12.5px/1.1 var(--body);color:var(--muted)}
:is(.bkm,.bkw) .bkm__len b{font:400 19px/1 var(--body);color:var(--ink)}
:is(.bkm,.bkw) .bkm__len:hover{border-color:rgba(231,201,140,.5)}
:is(.bkm,.bkw) .bkm__len:active{transform:scale(.97)!important}
:is(.bkm,.bkw) .bkm__len:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
:is(.bkm,.bkw) .bkm__len[aria-pressed="true"]{background:var(--accent-veil);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
:is(.bkm,.bkw) .bkm__len[aria-pressed="true"] span,:is(.bkm,.bkw) .bkm__len[aria-pressed="true"] b{color:var(--accent-2)}
:is(.bkm,.bkw) .bkm__lens.is-shake{animation:bkm-shake .35s}
@keyframes bkm-shake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
:is(.bkm,.bkw) .bkm__hint{min-height:18px;margin:6px 0 4px;font-size:12.5px;color:#e8958a}
:is(.bkm,.bkw) .bkm__send{display:flex;align-items:center;justify-content:center;gap:10px;height:50px;border-radius:999px;background:var(--btn-bg,var(--accent));color:var(--accent-ink)!important;font:600 12.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;text-decoration:none!important;transition:filter .25s,transform .25s var(--ease)}
:is(.bkm,.bkw) .bkm__send svg{width:17px;height:17px}
:is(.bkm,.bkw) .bkm__send:hover{filter:brightness(1.08)}
:is(.bkm,.bkw) .bkm__send:active{transform:scale(.98)}
:is(.bkm,.bkw) .bkm__alt{margin:12px 0 0;font-size:12.5px;line-height:1.5;color:var(--muted);text-align:center}
:is(.bkm,.bkw) .bkm__alt a{color:var(--accent-2);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(231,201,140,.45)}
:is(.bkm,.bkw) .lq{position:relative;display:flex;gap:2px;padding:4px;border-radius:999px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)}
:is(.bkm,.bkw) .lq__ind{position:absolute;top:4px;bottom:4px;left:0;width:0;border-radius:999px;background:var(--surface-2);box-shadow:inset 0 0 0 1px rgba(231,201,140,.4)}
:is(.bkm,.bkw) .lq__tab{all:unset;position:relative;z-index:1;flex:1 1 0;min-width:0;cursor:pointer;text-align:center;padding:10px 6px;border-radius:999px;font:400 13px/1 var(--body);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .25s;-webkit-tap-highlight-color:transparent}
:is(.bkm,.bkw) .lq__tab[aria-selected="true"]{color:var(--accent-2)}
:is(.bkm,.bkw) .lq__tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
:is(.bkm,.bkw) .bkm__toast{justify-content:flex-start;gap:14px;padding:14px 22px;text-align:left}
:is(.bkm,.bkw) .bkm__dot{width:9px;height:9px;border-radius:50%;background:var(--live);box-shadow:0 0 0 5px rgba(127,207,156,.15);flex:none}
:is(.bkm,.bkw) .bkm__toast b{display:block;font:500 14px/1.35 var(--body);color:var(--ink)}
:is(.bkm,.bkw) .bkm__toast span{display:block;margin-top:2px;font-size:12.5px;line-height:1.45;color:var(--muted)}
.pf__cta .bkm-wrap+.btn,.pf__cta .bkm-wrap+.btn+.btn{flex:1 1 0}
@media (max-width:420px){:is(.bkm,.bkw) .bkm__pick{padding:18px 14px 16px}
:is(.bkm,.bkw) .bkm__len b{font-size:17px}
:is(.bkm,.bkw) .lq__tab{font-size:12px;padding:10px 4px}}
@media (prefers-reduced-motion:reduce){:is(.bkm,.bkw) *,:is(.bkm,.bkw) .lq *{transition:none!important;animation:none!important}
:is(.bkm,.bkw) .bkm__check path{stroke-dashoffset:0}}
:is(.bkm,.bkw) button:is(:hover,:focus,:active){background:none;box-shadow:none}
:is(.bkm,.bkw) .bkm__close:is(:hover,:focus-visible){background:var(--surface-2);color:var(--ink)}
:is(.bkm,.bkw) .bkm__len[aria-pressed="true"]{background:var(--accent-veil);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
@media (max-width:640px){.pf__cta .bkm-wrap~.btn{padding:0 14px}}
:is(.bkm,.bkw) .bkm__head .bkm__close{background:var(--surface-2);box-shadow:inset 0 0 0 1px rgba(231,201,140,.22);color:var(--ink-2)}
:is(.bkm,.bkw) .bkm__head .bkm__close:is(:hover,:focus-visible){background:var(--accent-veil);box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent-2)}
:is(.bkm,.bkw) [hidden]{display:none!important}
:is(.bkm,.bkw) .bkm__time{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
:is(.bkm,.bkw) .bkm__time>*{flex:1 1 0;min-width:0}
:is(.bkm,.bkw) .bkm__fld{display:grid;gap:6px;margin:0}
:is(.bkm,.bkw) .bkm__fld>span:not(.bkm__ctl){font:500 10.5px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
:is(.bkm,.bkw) .bkm__fld--wide{margin-top:12px}
:is(.bkm,.bkw) .bkm__fld input,:is(.bkm,.bkw) .bkm__fld input:focus{-webkit-appearance:none;appearance:none;box-sizing:border-box;width:100%;height:42px;margin:0;padding:0 14px;border-radius:10px;border:1px solid var(--line-2);background:var(--bg);color:var(--ink);font:400 14px/1 var(--body);color-scheme:dark;box-shadow:none;outline:none;transition:border-color .2s}
:is(.bkm,.bkw) .bkm__fld input:focus{border-color:var(--accent)}
:is(.bkm,.bkw) .bkm__fld input::placeholder{color:var(--muted);opacity:1}
:is(.bkm,.bkw) .bkm__fld input::-webkit-calendar-picker-indicator{filter:invert(.8) sepia(.4);opacity:.75;cursor:pointer}
:is(.bkm,.bkw) .bkm__time .bkm__asap{all:unset;box-sizing:border-box;align-self:end;height:42px;padding:0 12px;border-radius:10px;border:1px solid var(--line-2);font:400 13px/1.15 var(--body);color:var(--ink-2);text-align:center;cursor:pointer;display:flex;align-items:center;justify-content:center}
:is(.bkm,.bkw) .bkm__time .bkm__asap[aria-pressed="true"]{background:var(--accent-veil);border-color:var(--accent);color:var(--accent-2)}
:is(.bkm,.bkw) .bkm__time .bkm__asap:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
:is(.bkm,.bkw) .bkm__ctl{position:relative;display:block}
:is(.bkm,.bkw) .bkm__ph{position:absolute;left:15px;right:36px;top:50%;transform:translateY(-50%);font:400 14px/1 var(--body);font-style:normal;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;text-transform:none;letter-spacing:0;transition:opacity .15s}
:is(.bkm,.bkw) .bkm__ctl.has-v .bkm__ph,:is(.bkm,.bkw) .bkm__ctl:focus-within .bkm__ph{opacity:0}
:is(.bkm,.bkw) .bkm__ctl:not(.has-v) input:not(:focus)::-webkit-datetime-edit{color:transparent}
:is(.bkm,.bkw) .bkm__ctl:not(.has-v) input:not(:focus){color:transparent}
.bk__actions .bkm-wrap{width:100%}
:is(.bkm,.bkw) .bkm__ph{right:28px;font-size:13.5px}
:is(.bkm,.bkw) .bkm__time .bkm__asap{padding:0 10px}
:is(.bkm,.bkw) .bkm__len b{white-space:nowrap}
:is(.bkm,.bkw) .bkm__len b.is-ask{font-size:14px;line-height:19px;color:var(--ink-2)}
:is(.bkm,.bkw) .bkm__lens:has(>.bkm__len:nth-child(4):last-child)>.bkm__len{flex-basis:calc(50% - 8px)}
.bkw{display:grid;gap:18px}
.bkw__head.is-swap>*{animation:bkw-fade .45s var(--ease)}
@keyframes bkw-fade{from{opacity:0;transform:translateY(6px);filter:blur(4px)}}
.bkw .bk__arrow{all:unset;box-sizing:border-box;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);color:var(--accent-2);cursor:pointer;transition:background .2s,border-color .2s}
.bkw .bk__top .bk__arrow:is(:hover,:focus-visible){border-color:var(--accent);background:var(--accent-veil)}
.bkw__steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.bkw__steps li{position:relative;display:flex;justify-content:center}
.bkw__steps li:not(:last-child)::after{content:"";position:absolute;top:13px;left:calc(50% + 18px);right:calc(-50% + 18px);height:1px;background:var(--line-2);transition:background .4s}
.bkw__steps li:has(.is-done):not(:last-child)::after{background:var(--accent)}
.bkw .bkw__steps button{all:unset;box-sizing:border-box;display:grid;justify-items:center;gap:7px;cursor:pointer;font:500 10.5px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap;transition:color .3s}
.bkw .bkw__steps button i{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);font:400 12px/1 var(--body);font-style:normal;letter-spacing:0;color:var(--muted);transition:background .3s,border-color .3s,color .3s,box-shadow .3s}
.bkw .bkw__steps button[aria-current]{color:var(--ink)}
.bkw .bkw__steps button[aria-current] i{border-color:var(--accent);background:var(--accent-veil);color:var(--accent-2);box-shadow:0 0 0 4px rgba(201,162,90,.1)}
.bkw .bkw__steps button.is-done i{border-color:var(--accent);background:var(--btn-bg,var(--accent));color:var(--accent-ink)}
.bkw .bkw__steps button:disabled{cursor:default;opacity:.55}
.bkw .bkw__steps button:focus-visible i{outline:2px solid var(--accent);outline-offset:2px}
.bkw__stage{position:relative}
.bkw__pane.in-r{animation:bkw-in-r .45s var(--ease)}
.bkw__pane.in-l{animation:bkw-in-l .45s var(--ease)}
@keyframes bkw-in-r{from{opacity:0;transform:translateX(28px);filter:blur(4px)}}
@keyframes bkw-in-l{from{opacity:0;transform:translateX(-28px);filter:blur(4px)}}
.bkw__pane>.bkm__lbl:first-child{margin-top:0}
.bkw__search{position:relative;display:block}
.bkw__search svg{position:absolute;left:14px;top:50%;width:17px;height:17px;transform:translateY(-50%);fill:none;stroke:var(--accent);stroke-width:1.8;pointer-events:none}
.bkw .bkw__search input,.bkw .bkw__search input:focus{-webkit-appearance:none;appearance:none;box-sizing:border-box;width:100%;height:46px;margin:0;padding:0 14px 0 42px;border-radius:12px;border:1px solid var(--line-2);background:var(--bg);color:var(--ink);font:400 14.5px/1 var(--body);box-shadow:none;outline:none;transition:border-color .2s}
.bkw .bkw__search input:focus{border-color:var(--accent)}
.bkw .bkw__search input::placeholder{color:var(--muted);opacity:1}
.bkw__list{margin-top:10px;max-height:min(46vh,340px);overflow-y:auto;overscroll-behavior:contain;padding:4px;border-radius:12px;border:1px solid var(--line);background:rgba(0,0,0,.12);scrollbar-width:thin;scrollbar-color:rgba(231,201,140,.3) transparent}
.bkw .bkw__list .bkw__opt{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;padding:8px 10px;border-radius:10px;cursor:pointer;transition:background .2s,box-shadow .2s}
.bkw .bkw__list .bkw__opt:hover{background:var(--surface-2)}
.bkw .bkw__list .bkw__opt:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.bkw .bkw__list .bkw__opt[aria-selected="true"]{background:var(--accent-veil);box-shadow:inset 0 0 0 1px var(--accent)}
.bkw__av{width:42px;height:42px;border-radius:50%;overflow:hidden;flex:none;background:var(--surface-2);box-shadow:0 0 0 1px var(--line-2)}
.bkw__av img{width:100%;height:100%;object-fit:cover;object-position:50% 15%;display:block}
.bkw__av--any{display:grid;place-items:center;background:var(--accent-veil);box-shadow:0 0 0 1px rgba(231,201,140,.4)}
.bkw__av--any svg{width:18px;height:18px;fill:none;stroke:var(--accent-2);stroke-width:1.6;stroke-linejoin:round}
.bkw__ot{min-width:0;display:grid;gap:3px}
.bkw__ot b{font:500 15px/1.2 var(--body);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bkw__ot small{font-size:12.5px;line-height:1.3;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bkw__op{margin-left:auto;padding-left:8px;font:400 15px/1 var(--body);color:var(--accent-2);white-space:nowrap}
.bkw .bkw__opt[aria-selected="true"] .bkw__ot b{color:var(--accent-2)}
.bkw__none{margin:0;padding:16px 12px;font-size:13.5px;color:var(--muted)}
.bkw__groups{margin-top:6px}
.bkw__gl{display:grid;gap:8px}
.bkw .bkw__gl .bkw__g{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;border:1px solid var(--line-2);cursor:pointer;transition:border-color .2s,background .2s}
.bkw .bkw__gl .bkw__g:hover{border-color:rgba(231,201,140,.5)}
.bkw .bkw__gl .bkw__g[aria-pressed="true"]{background:var(--accent-veil);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.bkw .bkw__gl .bkw__g:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.bkw__gimgs{display:flex;flex:none}
.bkw__gimgs img{width:30px;height:30px;border-radius:50%;object-fit:cover;object-position:50% 15%;margin-left:-9px;box-shadow:0 0 0 2px var(--bg-2)}
.bkw__gimgs img:first-child{margin-left:0}
.bkw__gt{display:grid;gap:2px;min-width:0}
.bkw__gt b{font:500 14px/1.25 var(--body);color:var(--ink)}
.bkw__gt small{font-size:12.5px;color:var(--muted)}
.bkw__nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px}
.bkw .bkw__nav .bkw__next{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:50px;padding:0 28px;border-radius:999px;background:var(--btn-bg,var(--accent));color:var(--accent-ink);font:600 12.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:filter .25s,transform .25s var(--ease)}
.bkw .bkw__nav .bkw__next:hover{filter:brightness(1.08)}
.bkw .bkw__nav .bkw__next:active{transform:scale(.98)}
.bkw .bkw__nav .bkw__next:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.bkw .bkw__nav .bkw__back{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:6px;padding:10px 4px;font:400 13.5px/1 var(--body);color:var(--muted);cursor:pointer;transition:color .2s}
.bkw .bkw__nav .bkw__back:hover{color:var(--ink)}
.bkw .bkw__nav .bkw__back:focus-visible{outline:2px solid var(--accent);border-radius:6px}
.bkw__nav svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bkw__sum{margin:0 0 18px;border-top:1px solid var(--line)}
.bkw__sum>div{display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--line)}
.bkw__sum dt{font:500 10.5px/1.4 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.bkw__sum dd{margin:0;font-size:14.5px;line-height:1.45;color:var(--ink-2)}
.bkw .bkw__sum .bkw__chg{all:unset;cursor:pointer;font-size:12.5px;color:var(--accent-2);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(231,201,140,.45)}
.bkw .bkw__sum .bkw__chg:focus-visible{outline:2px solid var(--accent);border-radius:4px}
.bkw__sent{display:grid;justify-items:center;text-align:center;padding:14px 0 6px}
.bkw__sent .bkm__check{width:46px;height:46px;padding:10px;border-radius:50%;background:var(--accent-veil);box-shadow:0 0 0 1px rgba(231,201,140,.45)}
.bkw__sent.is-on .bkm__check path{animation:bkw-draw .55s .2s cubic-bezier(.3,.9,.3,1) forwards}
@keyframes bkw-draw{to{stroke-dashoffset:0}}
.bkw__sent-t{margin:16px 0 6px;font:400 26px/1.15 var(--display);color:var(--ink)}
.bkw__sent-s{margin:0 0 18px;max-width:340px;font-size:14px;line-height:1.55;color:var(--muted)}
.bkw .bkw__sent .bkw__again{all:unset;box-sizing:border-box;cursor:pointer;height:44px;padding:0 22px;display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--accent);color:var(--accent-2);font:600 11.5px/1 var(--body);letter-spacing:.14em;text-transform:uppercase}
.bkw .bkw__sent .bkw__again:hover{background:var(--accent-veil)}
@media (max-width:480px){.bkw .bkw__steps button{font-size:9.5px;letter-spacing:.06em}
.bkw__sum>div{grid-template-columns:64px minmax(0,1fr) auto;gap:10px}
.bkw .bkw__nav .bkw__next{flex:1;padding:0 18px}}
@media (prefers-reduced-motion:reduce){.bkw *{animation:none!important;transition:none!important}
.bkw__sent .bkm__check path{stroke-dashoffset:0}}
.bkw__req{font-style:normal;color:var(--accent-2)}
:is(.bkm,.bkw) .bkm__time.is-shake{animation:bkm-shake .35s}
:is(.bkm,.bkw) [data-when-hint]{margin:8px 0 0}
:is(.bkm,.bkw) [data-when-hint]:empty{display:none}
