/* One header geometry for every customer page, independent of legacy page skins. */
html {scrollbar-gutter:stable}
html body.site-ui #site-header.site-header {
  --header-paper:#111513;--header-ink:#f0ecdf;--header-muted:#adb5ae;
  --header-panel:#1b211c;--header-line:#354034;--header-accent:#d4b978;
  --ui-panel:var(--header-panel);--ui-ink:var(--header-ink);--ui-line:var(--header-line);
  --ui-accent:var(--header-accent);--ui-hover:var(--header-panel);
  box-sizing:border-box;position:relative!important;top:auto!important;
  width:100%;max-width:1120px!important;margin:0 auto!important;padding:0 40px!important;
  min-height:92px!important;border:0!important;background:var(--header-paper)!important;
  box-shadow:none!important;backdrop-filter:none!important;z-index:80;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:16px;line-height:1.5;color:var(--header-ink);
}
html.theme-light body.site-ui #site-header.site-header {
  --header-paper:#f4f0e7;--header-ink:#2e352c;--header-muted:#626c61;
  --header-panel:#e9e6dc;--header-line:#cdcfc0;--header-accent:#5f6037;
}
html body.site-ui #site-header.site-header .site-nav-inner {
  box-sizing:border-box;display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;
  width:100%;max-width:none!important;height:92px!important;min-height:92px!important;
  margin:0!important;padding:0!important;gap:15px!important;border-bottom:1px solid var(--header-line);
}
html:is(.theme-light,.theme-dark) body.site-ui #site-header.site-header .site-logo {
  display:inline-flex;align-items:center;flex:1 1 auto;min-width:0;order:0;
  gap:12px;margin:0;padding:0;text-decoration:none;color:var(--header-ink)!important;
}
html body.site-ui #site-header.site-header .logo-icon-img {
  box-sizing:border-box;display:block;flex:0 0 36px;width:36px!important;height:36px!important;
  margin:0;border:1px solid var(--header-line);border-radius:10px!important;
  object-fit:cover;box-shadow:none!important;transform:none!important;transition:none;
}
html body.site-ui #site-header.site-header .logo-text {
  display:flex;flex-direction:column;gap:0;line-height:1;
}
html body.site-ui #site-header.site-header .logo-title {
  font-family:inherit;font-size:16px!important;font-weight:600!important;line-height:20px;
  letter-spacing:-.02em;max-width:none!important;white-space:nowrap;
  background:none!important;color:var(--header-ink)!important;
  -webkit-text-fill-color:currentColor!important;text-shadow:none!important;
}
html body.site-ui #site-header.site-header .logo-sub {
  font-family:inherit;font-size:9px!important;font-weight:500;line-height:11px;
  letter-spacing:2px;margin-top:2px;white-space:nowrap;color:var(--header-muted)!important;
  -webkit-text-fill-color:currentColor!important;
}
html body.site-ui #site-header.site-header .salon-nav-links {
  display:flex;align-items:center;gap:24px;margin:0;order:1;flex:0 0 auto;font-size:12px;white-space:nowrap;
}
html body.site-ui #site-header.site-header .salon-nav-links a {
  padding:12px 0;font-weight:500;line-height:18px;text-decoration:none;
  color:var(--header-muted)!important;-webkit-text-fill-color:currentColor!important;
}
html body.site-ui #site-header.site-header .salon-nav-links a:is(:hover,:focus-visible) {
  text-decoration:underline;text-underline-offset:4px;
}
html body.site-ui #site-header.site-header .salon-nav-play[aria-current="page"] {
  color:var(--header-accent)!important;
}
html body.site-ui #site-header.site-header .home-theme-toggle {
  box-sizing:border-box;position:relative;display:inline-grid;place-items:center;order:2;flex:0 0 34px;
  width:34px!important;height:34px!important;min-height:34px!important;margin:0!important;padding:0!important;
  border:1px solid var(--header-line)!important;border-radius:50%;font-size:0!important;line-height:1;
  background:transparent!important;color:var(--header-ink)!important;box-shadow:none!important;cursor:pointer;
}
html body.site-ui #site-header.site-header .home-theme-toggle::before {
  content:'🌙';position:absolute;inset:0;display:grid;place-items:center;transform:none;
  font-size:17px;line-height:1;
}
html.theme-dark body.site-ui #site-header.site-header .home-theme-toggle::before {content:'☀️'}
html body.site-ui #site-header.site-header .language-selector {
  position:relative;display:inline-flex;align-items:center;justify-content:center;order:3;flex:0 0 46px;
  width:46px;height:34px!important;min-height:34px!important;margin:0!important;transform:none;
  border:0;background:transparent!important;z-index:81;
}
html body.site-ui #site-header.site-header .language-select {
  box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;appearance:none;
  width:46px!important;height:34px!important;min-height:34px!important;margin:0!important;padding:0!important;
  border:1px solid var(--header-line)!important;border-radius:20px;font-family:inherit;font-size:12px;
  line-height:1;font-weight:700;background:var(--header-panel)!important;color:var(--header-ink)!important;
  -webkit-text-fill-color:currentColor!important;box-shadow:none!important;cursor:pointer;
}
html body.site-ui #site-header.site-header .language-current {
  display:flex;align-items:center;justify-content:center;width:100%;line-height:1;
  color:var(--header-ink)!important;-webkit-text-fill-color:currentColor!important;
}
html body.site-ui #site-header.site-header .language-menu {
  display:none;position:absolute;top:calc(100% + 8px);left:auto;right:0;transform:none;
  box-sizing:border-box;width:104px;max-width:104px;padding:6px;border:1px solid var(--header-line)!important;
  border-radius:12px;background:var(--header-panel)!important;box-shadow:0 8px 24px #0002!important;
}
html body.site-ui #site-header.site-header .language-selector.open .language-menu {display:grid;gap:3px}
html body.site-ui #site-header.site-header .language-selector .language-option {
  --ui-control-background:var(--header-line);
  box-sizing:border-box;display:flex;align-items:center;justify-content:center;appearance:none;
  width:100%;height:34px!important;min-height:34px!important;padding:0!important;margin:0!important;
  border:0!important;border-radius:8px!important;background:transparent!important;
  font-family:inherit;font-size:12px!important;line-height:1;font-weight:500!important;
  color:var(--header-ink)!important;-webkit-text-fill-color:currentColor!important;
  box-shadow:none!important;text-shadow:none!important;transition:none!important;cursor:pointer;
}
html body.site-ui #site-header.site-header .language-selector .language-option:is(.active,:hover,:focus-visible) {
  background:var(--header-line)!important;
}
html body.site-ui #site-header.site-header .language-selector .language-option.active {
  font-weight:700!important;
}
html body.site-ui #site-header.site-header :is(a,button):focus-visible {
  outline:2px solid var(--header-accent)!important;outline-offset:3px;
}
/* Align wide page introductions with the same left edge as the logo. */
html body.site-ui.account-page .account-shell {width:min(1040px,calc(100% - 80px))}
html body.site-ui.support-page main {width:min(1040px,calc(100% - 80px))}
html body.site-ui.support-page .site-nav #auth-nav-area {display:none!important}
/* A compact desktop dock becomes four equal touch targets on small screens. */
html body.site-ui {
  --tab-paper:#1b211c;--tab-ink:#b8bfb4;--tab-accent:#e2c987;
  --tab-panel:#303729;--tab-hover:#252d24;--tab-line:#3a4437;
  --tab-shadow:0 12px 36px #0005,0 2px 8px #0003;
  padding-bottom:calc(118px + env(safe-area-inset-bottom,0px));
}
html.theme-light body.site-ui {
  --tab-paper:#fffdf7;--tab-ink:#626c61;--tab-accent:#50582f;
  --tab-panel:#e9ebda;--tab-hover:#f0f0e6;--tab-line:#d6d9ca;
  --tab-shadow:0 12px 36px #26301d14,0 2px 8px #26301d0a;
}
html body.site-ui .bottom-tabbar {
  box-sizing:border-box;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;
  position:fixed!important;left:50%!important;bottom:calc(20px + env(safe-area-inset-bottom,0px))!important;top:auto!important;
  width:min(508px,calc(100% - 32px));max-width:100%;margin:0!important;
  transform:translateX(-50%)!important;z-index:70;
  padding:7px;border:1px solid var(--tab-line);border-radius:22px;
  background:var(--tab-paper)!important;
  border-top-color:var(--tab-line)!important;
  box-shadow:var(--tab-shadow)!important;backdrop-filter:none;-webkit-backdrop-filter:none;
}
html body.site-ui .bottom-tab {
  box-sizing:border-box;display:flex;align-items:center;justify-content:center;flex-direction:row;gap:9px;
  min-width:0;min-height:48px;margin:0;padding:10px 8px;border:0;border-radius:15px;
  background:transparent;color:var(--tab-ink)!important;-webkit-text-fill-color:currentColor!important;
  font:500 13px/1.4 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  text-decoration:none!important;box-shadow:none;transform:none;white-space:nowrap;
  transition:background-color .16s ease,color .16s ease;
}
html body.site-ui .bottom-tab b {
  font:inherit;letter-spacing:-.02em;color:inherit!important;-webkit-text-fill-color:currentColor!important;
}
html body.site-ui .bottom-tab.is-active {
  color:var(--tab-accent)!important;background:var(--tab-panel);font-weight:700;
}
html body.site-ui .bottom-tab-icon {
  display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:0;
  line-height:1;color:inherit;background:transparent;filter:none;box-shadow:none;
}
html body.site-ui .bottom-tab-icon svg {
  display:block;width:22px;height:22px;fill:none;stroke:currentColor;
  stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;
}
html body.site-ui .bottom-tab.is-active .bottom-tab-icon {
  color:var(--tab-accent)!important;background:transparent!important;box-shadow:none;
}
html body.site-ui .bottom-tab:focus-visible {
  outline:2px solid var(--tab-accent);outline-offset:-2px;background:var(--tab-hover);
}
@media(hover:hover) {
  html body.site-ui .bottom-tab:hover {background:var(--tab-hover);color:var(--tab-accent)!important}
  html body.site-ui .bottom-tab.is-active:hover {background:var(--tab-panel)}
}
@media(max-width:600px) {
  html body.site-ui .bottom-tabbar {
    width:min(508px,calc(100% - 24px));bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;
    gap:2px;padding:6px;border-radius:21px;
  }
  html body.site-ui .bottom-tab {
    flex-direction:column;gap:4px;min-height:56px;padding:7px 2px;border-radius:14px;font-size:11px;
  }
}
@media(prefers-reduced-motion:reduce) {
  html body.site-ui .bottom-tab {transition:none}
}
@media print {
  html body.site-ui {padding-bottom:0}
  html body.site-ui .bottom-tabbar {display:none!important}
}
@media(max-width:760px) {
  html body.site-ui #site-header.site-header .home-theme-toggle {flex-basis:44px;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;max-height:44px!important}
  html body.site-ui #site-header.site-header :is(.language-selector,.language-select),
  html body.site-ui #site-header.site-header .language-selector .language-option {height:44px!important;min-height:44px!important;max-height:none!important}
  html body.site-ui #site-header.site-header {padding:0 22px!important;min-height:76px!important}
  html body.site-ui #site-header.site-header .site-nav-inner {height:76px!important;min-height:76px!important;gap:8px!important}
  html:is(.theme-light,.theme-dark) body.site-ui #site-header.site-header .site-logo {gap:9px}
  html body.site-ui #site-header.site-header .logo-icon-img {width:34px!important;height:34px!important;flex-basis:34px}
  html body.site-ui #site-header.site-header .logo-title {font-size:14px!important;line-height:18px}
  html body.site-ui #site-header.site-header .logo-sub {font-size:8px!important;letter-spacing:1px;line-height:10px}
  html body.site-ui #site-header.site-header .salon-nav-links {display:flex;gap:0}
  html body.site-ui #site-header.site-header .salon-nav-links a:not(.salon-nav-play) {display:none}
  html body.site-ui #site-header.site-header .salon-nav-play {display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 4px}
  html body.site-ui.account-page .account-shell,
  html body.site-ui.support-page main {width:calc(100% - 44px)}
}
@media(max-width:380px) {
  html body.site-ui #site-header.site-header {padding:0 14px!important}
  html body.site-ui #site-header.site-header .site-nav-inner {gap:6px!important}
  html body.site-ui #site-header.site-header .site-logo {gap:7px}
  html body.site-ui #site-header.site-header .logo-title {font-size:13px!important}
}
