.aspa-bottom-nav{position:fixed;z-index:9999;left:50%;bottom:max(8px,env(safe-area-inset-bottom));display:grid;grid-template-columns:48% repeat(4,13%);align-items:center;width:min(calc(100% - 16px),590px);height:68px;padding:6px;border:1px solid rgba(255,255,255,.3);border-radius:34px;background:rgba(8,47,39,.97);box-shadow:0 12px 34px rgba(0,25,19,.34);transform:translateX(-50%);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden}
.aspa-area-slider{position:relative;height:56px;border:1px solid rgba(255,255,255,.52);border-radius:28px;background:rgba(0,18,14,.28);overflow:hidden;touch-action:none}.aspa-area-slider:after{position:absolute;left:50%;top:8px;bottom:8px;width:1px;background:rgba(255,255,255,.25);content:""}.aspa-area-label{position:absolute;z-index:1;top:0;width:50%;height:100%;padding:0 25px!important;border:0;background:transparent;color:#eef5f2;font:300 22px/1.05 Georgia,'Times New Roman',serif;letter-spacing:.025em;cursor:pointer}.aspa-area-label.clinic{left:0;text-align:left}.aspa-area-label.spa{right:0;text-align:right}.aspa-area-knob{position:absolute;z-index:3;left:50%;top:4px;display:grid;width:48px;height:48px;place-items:center;margin-left:-24px;border:1px solid rgba(255,255,255,.82);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;box-shadow:0 3px 12px #0003;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:transform .2s ease;cursor:grab;touch-action:none}.aspa-area-knob span{font:300 23px Georgia,'Times New Roman',serif}.aspa-area-slider.is-clinic .aspa-area-knob{transform:translateX(calc(-1 * var(--slider-shift,60px)))}.aspa-area-slider.is-spa .aspa-area-knob{transform:translateX(var(--slider-shift,60px))}.aspa-area-slider.dragging .aspa-area-knob{transition:none;cursor:grabbing}
.aspa-nav-item{display:flex;min-width:0;height:100%;align-items:center;justify-content:center;border:0;background:transparent;color:#e4eee9;text-decoration:none;cursor:pointer}.aspa-nav-item:active{transform:scale(.9)}.aspa-nav-item svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.65}.aspa-social-icon{width:36px;height:36px;object-fit:contain;filter:invert(1);opacity:.96}.aspa-account-avatar{width:36px;height:36px;border:2px solid rgba(255,255,255,.78);border-radius:50%;background:#d9e6e1;object-fit:cover}.aspa-account-placeholder{display:grid;place-items:center;color:#174b3f;font-size:18px;font-weight:800}
.aspa-menu-art{position:relative;display:block;width:40px;height:40px;overflow:hidden;mix-blend-mode:screen}.aspa-menu-art img{position:absolute;top:-20px;width:170px;height:auto;max-width:none;filter:invert(1) grayscale(1) contrast(1.35)}.aspa-menu-art.art-messenger img{left:-17px}.aspa-menu-art.art-zalo img{left:-65px}.aspa-menu-art.art-book img{left:-114px}
.aspa-account-overlay{position:fixed;z-index:10020;inset:0;display:none;padding:18px;background:rgba(0,22,17,.62);overflow:auto}.aspa-account-overlay.open{display:flex;align-items:center;justify-content:center}.aspa-account-panel{width:min(100%,460px);max-height:92vh;padding:20px;border-radius:22px;background:#f7faf8;color:#173b33;font-family:Georgia,'Times New Roman',serif;box-shadow:0 22px 60px rgba(0,0,0,.34);overflow:auto}.aspa-account-head{display:flex;align-items:center;justify-content:space-between}.aspa-account-head h2{margin:0;font:400 34px/1.1 Georgia,'Times New Roman',serif}.aspa-account-close{width:38px;height:38px;border:0;border-radius:50%;background:#e2ebe7;color:#173b33;font:300 27px Georgia,serif}.aspa-avatar-wrap{display:flex;margin:18px 0;flex-direction:column;align-items:center;gap:9px}.aspa-avatar-large{width:92px;height:92px;border:3px solid #fff;border-radius:50%;background:#dce8e3;box-shadow:0 5px 16px #12392f25;object-fit:cover}.aspa-avatar-label{padding:8px 16px;border:1px solid #174b3f;border-radius:999px;color:#174b3f;font-size:17px;font-weight:400;cursor:pointer}.aspa-avatar-label input{display:none}.aspa-account-field{display:block;margin:12px 0}.aspa-account-field span{display:block;margin-bottom:6px;font-size:17px;font-weight:400}.aspa-account-input{width:100%;height:49px;padding:0 13px;border:1px solid #b8c9c2;border-radius:11px;background:#fff;color:#173b33;font:400 18px Georgia,'Times New Roman',serif}.aspa-theme-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.aspa-theme-option{padding:12px;border:1px solid #b9c9c3;border-radius:12px;background:#fff;color:#173b33;font:400 18px Georgia,'Times New Roman',serif}.aspa-theme-option.active{border-color:#174b3f;background:#174b3f;color:#fff}.aspa-account-save{width:100%;min-height:49px;border:0;border-radius:12px;background:#174b3f;color:#fff;font:400 18px Georgia,'Times New Roman',serif}.aspa-account-message{margin:10px 0;color:#7b3028;font-size:16px;line-height:1.45}.aspa-account-login{display:inline-block;margin-top:5px;color:#174b3f;font-weight:400}
body{padding-bottom:92px!important}.quick-contact{display:none!important}
body,button,input,select,textarea{font-family:Georgia,'Times New Roman',serif!important}
html[data-aspa-theme="dark"] body{background:#071d18!important;color:#e8f1ed!important}html[data-aspa-theme="dark"] .booking-container,html[data-aspa-theme="dark"] .clinic-page,html[data-aspa-theme="dark"] main{background:#0d2922!important;color:#e8f1ed!important}html[data-aspa-theme="dark"] section,html[data-aspa-theme="dark"] .card,html[data-aspa-theme="dark"] .booking-summary,html[data-aspa-theme="dark"] .time-section,html[data-aspa-theme="dark"] .service-card,html[data-aspa-theme="dark"] .aspa-seo-card{background:#15372f!important;color:#e8f1ed!important;border-color:#31574e!important}html[data-aspa-theme="dark"] .aspa-account-panel{background:#102f28;color:#eef6f3}html[data-aspa-theme="dark"] .aspa-account-input,html[data-aspa-theme="dark"] .aspa-theme-option{background:#183d34;color:#fff;border-color:#3a6057}html[data-aspa-theme="dark"] .muted,html[data-aspa-theme="dark"] .step-description,html[data-aspa-theme="dark"] .menu-description,html[data-aspa-theme="dark"] .section-lead{color:#b8cbc4!important}
@media(max-width:480px){.aspa-bottom-nav{grid-template-columns:48% repeat(4,13%);height:62px}.aspa-area-slider{height:50px}.aspa-area-knob{top:3px;width:44px;height:44px;margin-left:-22px}.aspa-area-label{padding:0 18px!important;font-size:19px}.aspa-menu-art{width:36px;height:36px}.aspa-menu-art img{top:-18px;width:153px}.aspa-menu-art.art-messenger img{left:-15px}.aspa-menu-art.art-zalo img{left:-59px}.aspa-menu-art.art-book img{left:-103px}.aspa-account-avatar{width:32px;height:32px}}
@media(max-width:350px){.aspa-area-label{padding:0 14px!important;font-size:17px}.aspa-menu-art{width:33px;height:33px}.aspa-menu-art img{top:-16px;width:140px}.aspa-menu-art.art-messenger img{left:-14px}.aspa-menu-art.art-zalo img{left:-54px}.aspa-menu-art.art-book img{left:-94px}}

/* v80 — À Spa typography: Montserrat Light 300 */
html,body,button,input,select,textarea{font-family:'Montserrat',Arial,Helvetica,sans-serif!important;font-weight:300}

/* v81 — refined bottom bar + Montserrat account */
.aspa-bottom-nav{grid-template-columns:46% repeat(4,13.5%);height:70px;padding:7px 8px;column-gap:0}
.aspa-area-slider{height:56px}
.aspa-area-label{font-family:'Montserrat',Arial,sans-serif!important;font-weight:300!important;font-size:21px;letter-spacing:.02em}
.aspa-area-knob span{font-family:'Montserrat',Arial,sans-serif!important;font-weight:300!important;font-size:25px;line-height:1}
.aspa-nav-item{padding:0 5px}
.aspa-nav-item svg{width:39px;height:39px;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.aspa-nav-item svg text{fill:currentColor;stroke:none;font-family:'Montserrat',Arial,sans-serif;font-size:9px;font-weight:300}
.aspa-account-avatar{width:39px;height:39px;border-width:1.25px}
.aspa-account-placeholder{font-family:'Montserrat',Arial,sans-serif!important;font-weight:300!important;font-size:17px;color:#fff;border:1.25px solid rgba(255,255,255,.8);border-radius:50%}
.aspa-account-panel,.aspa-account-panel *{font-family:'Montserrat',Arial,sans-serif!important;font-weight:300}
.aspa-account-head h2{font-family:'Montserrat',Arial,sans-serif!important;font-weight:300;font-size:30px;letter-spacing:.03em}
.aspa-account-input,.aspa-account-save,.aspa-avatar-label{font-family:'Montserrat',Arial,sans-serif!important;font-weight:300}
.aspa-account-field small{font-size:12px;opacity:.65}
.aspa-account-input[readonly]{background:#eef3f1;color:#61716b}
.aspa-theme-picker{display:none!important}
@media(max-width:480px){.aspa-bottom-nav{grid-template-columns:46% repeat(4,13.5%);height:66px;padding:7px 7px}.aspa-area-slider{height:52px}.aspa-area-label{font-size:19px}.aspa-nav-item{padding:0 4px}.aspa-nav-item svg{width:36px;height:36px}.aspa-account-avatar{width:36px;height:36px}}


/* v83 — reference 6-item menu bar */
.aspa-bottom-nav{left:50%;bottom:max(8px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(6,1fr);width:min(calc(100% - 20px),590px);height:84px;padding:8px 7px 7px;border:1px solid rgba(255,255,255,.26);border-radius:38px;background:rgba(5,58,48,.98);overflow:visible;column-gap:0}
.aspa-section-tab,.aspa-nav-stack{position:relative;z-index:2;display:flex!important;min-width:0;height:100%;padding:0 2px!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;color:#f3f7f5;text-decoration:none;cursor:pointer}
.aspa-tab-icon{display:grid;width:40px;height:40px;place-items:center;flex:0 0 40px}
.aspa-tab-icon svg{width:37px!important;height:37px!important;fill:none;stroke:currentColor;stroke-width:1.25!important;stroke-linecap:round;stroke-linejoin:round}
.aspa-tab-icon svg text{fill:currentColor;stroke:none;font-family:'Montserrat',Arial,sans-serif;font-size:9px;font-weight:300}
.aspa-tab-label{display:block;max-width:100%;font-family:'Montserrat',Arial,sans-serif!important;font-size:13px;font-weight:300;line-height:1;letter-spacing:0;white-space:nowrap}
.aspa-active-ring{position:absolute;z-index:5;left:var(--active-x,8.33%);top:8px;display:grid;width:43px;height:43px;place-items:center;border:1.8px solid rgba(255,255,255,.96);border-radius:50%;background:rgba(5,58,48,.99);color:#fff;transform:translateX(-50%);pointer-events:none;box-shadow:0 1px 5px rgba(0,0,0,.12);transition:left .22s ease}
.aspa-active-ring span{font-family:'Montserrat',Arial,sans-serif!important;font-size:26px;font-weight:300;line-height:1}
.aspa-account-avatar{width:37px!important;height:37px!important;border:1.25px solid rgba(255,255,255,.92)!important}
.aspa-account-placeholder{width:37px;height:37px;color:#fff!important;font-size:15px!important}
.aspa-area-slider,.aspa-area-knob,.aspa-area-label{display:none!important}
@media(max-width:480px){.aspa-bottom-nav{grid-template-columns:repeat(6,1fr);height:80px;padding:7px 5px 6px;border-radius:35px}.aspa-tab-icon{width:37px;height:37px;flex-basis:37px}.aspa-tab-icon svg{width:34px!important;height:34px!important}.aspa-tab-label{font-size:11.5px}.aspa-active-ring{top:7px;width:40px;height:40px}.aspa-active-ring span{font-size:24px}.aspa-account-avatar,.aspa-account-placeholder{width:34px!important;height:34px!important}}
@media(max-width:350px){.aspa-tab-label{font-size:10px}.aspa-tab-icon{width:34px;height:34px;flex-basis:34px}.aspa-tab-icon svg{width:31px!important;height:31px!important}.aspa-active-ring{width:37px;height:37px}.aspa-active-ring span{font-size:22px}}


/* v84 — exact reference menu proportions + active À masks Beauty/Spa icon */
.aspa-bottom-nav{
  width:min(calc(100% - 14px),590px)!important;
  height:86px!important;
  padding:7px 8px 8px!important;
  border:1px solid rgba(255,255,255,.28)!important;
  border-radius:39px!important;
  background:#063e34!important;
  box-shadow:0 9px 26px rgba(0,28,22,.28)!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}
.aspa-section-tab,.aspa-nav-stack{gap:4px!important;padding:0!important;}
.aspa-tab-icon{width:42px!important;height:42px!important;flex-basis:42px!important;}
.aspa-tab-icon svg{width:38px!important;height:38px!important;stroke-width:1.35!important;}
.aspa-tab-label{font-size:12.5px!important;font-weight:300!important;line-height:1!important;color:#fff!important;}
.aspa-section-tab.beauty:after{content:"";position:absolute;right:-1px;top:11px;bottom:10px;width:1px;background:rgba(255,255,255,.28)}
.aspa-active-ring{
  top:7px!important;width:44px!important;height:44px!important;
  border:2.15px solid rgba(255,255,255,.98)!important;
  background:#063e34!important;box-shadow:none!important;
}
.aspa-active-ring span{font-size:25px!important;font-weight:300!important;transform:translateY(-1px)}
.aspa-account-avatar{width:39px!important;height:39px!important;border:1.35px solid rgba(255,255,255,.95)!important;}
@media(max-width:480px){
 .aspa-bottom-nav{width:calc(100% - 12px)!important;height:82px!important;padding:6px 5px 7px!important;border-radius:37px!important}
 .aspa-tab-icon{width:39px!important;height:39px!important;flex-basis:39px!important}
 .aspa-tab-icon svg{width:35px!important;height:35px!important}
 .aspa-tab-label{font-size:11.5px!important}
 .aspa-active-ring{top:6px!important;width:42px!important;height:42px!important}
 .aspa-active-ring span{font-size:24px!important}
 .aspa-account-avatar{width:36px!important;height:36px!important}
}

/* v85 — fixed bottom navigation inspired by supplied reference */
.aspa-bottom-nav{
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  bottom:0!important;
  width:min(100%,590px)!important;
  height:calc(78px + env(safe-area-inset-bottom))!important;
  padding:7px 8px calc(7px + env(safe-area-inset-bottom))!important;
  border:0!important;
  border-top:1px solid rgba(25,55,47,.12)!important;
  border-radius:0!important;
  background:rgba(255,252,246,.97)!important;
  box-shadow:0 -8px 24px rgba(28,42,36,.10)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  transform:translateX(-50%)!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  overflow:visible!important;
}
.aspa-section-tab,.aspa-nav-stack{color:#4c5d56!important;gap:3px!important}
.aspa-tab-icon{width:38px!important;height:38px!important;flex-basis:38px!important}
.aspa-tab-icon svg{width:33px!important;height:33px!important;stroke-width:1.35!important}
.aspa-tab-icon svg text{fill:currentColor!important}
.aspa-tab-label{font-size:11px!important;font-weight:300!important;color:#4c5d56!important}
.aspa-section-tab.beauty:after{display:none!important}
.aspa-active-ring{
  top:5px!important;
  width:40px!important;height:40px!important;
  border:1.6px solid #53665e!important;
  background:#fffaf3!important;
  color:#314b42!important;
  box-shadow:0 2px 7px rgba(25,55,47,.08)!important;
}
.aspa-active-ring span{font-size:23px!important;color:#314b42!important}
.aspa-account-avatar{width:34px!important;height:34px!important;border:1.25px solid #65776f!important}
.aspa-account-placeholder{width:34px!important;height:34px!important;color:#4c5d56!important;border-color:#65776f!important}
.aspa-account-placeholder .aspa-user-placeholder{width:72%!important;height:72%!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round;stroke-linejoin:round}
body{padding-bottom:calc(92px + env(safe-area-inset-bottom))!important}
@media(max-width:480px){
 .aspa-bottom-nav{width:100%!important;height:calc(74px + env(safe-area-inset-bottom))!important;padding:6px 4px calc(6px + env(safe-area-inset-bottom))!important}
 .aspa-tab-icon{width:36px!important;height:36px!important;flex-basis:36px!important}
 .aspa-tab-icon svg{width:31px!important;height:31px!important}
 .aspa-tab-label{font-size:10.5px!important}
 .aspa-active-ring{top:4px!important;width:38px!important;height:38px!important}
 .aspa-active-ring span{font-size:22px!important}
 .aspa-account-avatar,.aspa-account-placeholder{width:32px!important;height:32px!important}
}

/* v86 — cinematic green bar, supplied gold icons, labels only for Beauty and Spa */
.aspa-bottom-nav{height:calc(89px + env(safe-area-inset-bottom))!important;padding:9px 8px calc(9px + env(safe-area-inset-bottom))!important;border-top:1px solid rgba(255,255,255,.16)!important;background:linear-gradient(180deg,#0b4b3d 0%,#05382f 58%,#032c25 100%)!important;box-shadow:0 -10px 30px rgba(0,32,25,.28)!important}
.aspa-section-tab,.aspa-nav-stack{color:#fff!important}.aspa-section-tab{gap:5px!important}.aspa-nav-stack{gap:0!important}
.aspa-tab-icon{width:44px!important;height:44px!important;flex-basis:44px!important}.aspa-tab-icon svg{width:39px!important;height:39px!important;stroke:#fff!important}
.aspa-tab-icon .aspa-gold-icon{display:block;width:42px;height:42px;object-fit:contain}
.aspa-booking-icon .aspa-book-thin{width:40px!important;height:40px!important;fill:none!important;stroke:#fff!important;stroke-width:1.35!important;stroke-linecap:round;stroke-linejoin:round}
.aspa-tab-label{font-size:12px!important;color:#fff!important}
.aspa-account-avatar{width:41px!important;height:41px!important;border:1.5px solid #fff!important;border-radius:50%!important}.aspa-account-placeholder{width:41px!important;height:41px!important;color:#fff!important;border:1.5px solid #fff!important;border-radius:50%!important}
.aspa-section-tab.beauty:after{display:block!important;content:"";position:absolute;right:-1px;top:18px;bottom:18px;width:1px;background:rgba(255,255,255,.42)}
.aspa-active-ring{top:12px!important;width:47px!important;height:47px!important;border:2px solid #fff!important;background:#06382f!important;color:#fff!important;box-shadow:0 2px 9px rgba(0,0,0,.2)!important}.aspa-active-ring span{font-size:26px!important;color:#fff!important}
body{padding-bottom:calc(103px + env(safe-area-inset-bottom))!important}
@media(max-width:480px){.aspa-bottom-nav{height:calc(84px + env(safe-area-inset-bottom))!important;padding:8px 4px calc(8px + env(safe-area-inset-bottom))!important}.aspa-tab-icon{width:41px!important;height:41px!important;flex-basis:41px!important}.aspa-tab-icon svg{width:36px!important;height:36px!important}.aspa-tab-icon .aspa-gold-icon{width:39px;height:39px}.aspa-booking-icon .aspa-book-thin{width:37px!important;height:37px!important}.aspa-tab-label{font-size:11px!important}.aspa-section-tab.beauty:after{top:16px;bottom:16px}.aspa-active-ring{top:11px!important;width:44px!important;height:44px!important}.aspa-active-ring span{font-size:25px!important}.aspa-account-avatar,.aspa-account-placeholder{width:38px!important;height:38px!important}body{padding-bottom:calc(98px + env(safe-area-inset-bottom))!important}}

/* v90 — Booking visually matches Zalo; Beauty/Spa group reduced slightly */
.aspa-booking-icon .aspa-book-thin{width:46px!important;height:46px!important}
.aspa-section-tab .aspa-tab-icon{width:40px!important;height:40px!important;flex-basis:40px!important}
.aspa-section-tab .aspa-gold-icon{width:37px!important;height:37px!important}
.aspa-section-tab .aspa-tab-label{font-size:10.8px!important}
.aspa-active-ring{top:13px!important;width:42px!important;height:42px!important}
.aspa-active-ring span{font-size:24px!important}
@media(max-width:480px){
 .aspa-booking-icon .aspa-book-thin{width:44px!important;height:44px!important}
 .aspa-section-tab .aspa-tab-icon{width:37px!important;height:37px!important;flex-basis:37px!important}
 .aspa-section-tab .aspa-gold-icon{width:35px!important;height:35px!important}
 .aspa-section-tab .aspa-tab-label{font-size:10px!important}
 .aspa-active-ring{top:13px!important;width:40px!important;height:40px!important}
 .aspa-active-ring span{font-size:23px!important}
}

/* v92 — one shared icon row; Beauty/Spa labels sit on a separate row */
.aspa-section-tab,.aspa-nav-stack{
  display:grid!important;
  grid-template-rows:50px 14px!important;
  align-content:start!important;
  align-items:center!important;
  justify-items:center!important;
  justify-content:stretch!important;
  gap:0!important;
}
.aspa-section-tab .aspa-tab-icon,.aspa-nav-stack .aspa-tab-icon{grid-row:1!important;align-self:center!important;margin:0!important}
.aspa-section-tab .aspa-tab-label{grid-row:2!important;align-self:center!important;margin:0!important}
.aspa-active-ring{top:13px!important}
.aspa-section-tab.beauty:after{top:12px!important;bottom:12px!important}
@media(max-width:480px){
 .aspa-section-tab,.aspa-nav-stack{grid-template-rows:47px 13px!important}
 .aspa-active-ring{top:12px!important}
 .aspa-section-tab.beauty:after{top:11px!important;bottom:11px!important}
}

/* v93 — authentication lives in My Account; four action icons are vertically centered */
.aspa-account-auth-title{margin:24px 0 8px;font-size:23px;font-weight:400}
.aspa-account-auth-note{margin:7px 0 13px;color:#61716b;font-size:15px;line-height:1.45}
.aspa-auth-spacing{margin-top:10px!important}
.aspa-account-logout{width:100%;margin-top:11px;padding:11px;border:1px solid #b76b6b;border-radius:12px;background:#fff;color:#9b2c2c;font:400 15px 'Montserrat',Arial,sans-serif}
.aspa-nav-stack{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important}
.aspa-section-tab{transform:translateY(7px)!important}
.aspa-nav-stack .aspa-tab-icon{margin:0!important;transform:translateY(-1px)}
.aspa-nav-stack .aspa-booking-icon{transform:translateY(-7px)!important}
.aspa-active-ring{top:20px!important}
.aspa-booking-icon .aspa-book-thin{width:51px!important;height:51px!important}
@media(max-width:480px){
 .aspa-section-tab{transform:translateY(7px)!important}
 .aspa-nav-stack .aspa-tab-icon{transform:translateY(-1px)}
 .aspa-nav-stack .aspa-booking-icon{transform:translateY(-7px)!important}
 .aspa-active-ring{top:19px!important}
 .aspa-booking-icon .aspa-book-thin{width:49px!important;height:49px!important}
}

/* v100 — all menu icons 10% smaller; labels and layout remain unchanged */
.aspa-tab-icon .aspa-gold-icon{width:38px!important;height:38px!important}
.aspa-section-tab .aspa-gold-icon{width:33px!important;height:33px!important}
.aspa-booking-icon .aspa-book-thin{width:46px!important;height:46px!important}
.aspa-account-avatar,.aspa-account-placeholder{width:37px!important;height:37px!important}
.aspa-active-ring{top:22px!important;width:38px!important;height:38px!important}
.aspa-active-ring span{font-size:22px!important}
@media(max-width:480px){
 .aspa-tab-icon .aspa-gold-icon{width:35px!important;height:35px!important}
 .aspa-section-tab .aspa-gold-icon{width:32px!important;height:32px!important}
 .aspa-booking-icon .aspa-book-thin{width:44px!important;height:44px!important}
 .aspa-account-avatar,.aspa-account-placeholder{width:34px!important;height:34px!important}
 .aspa-active-ring{top:21px!important;width:36px!important;height:36px!important}
 .aspa-active-ring span{font-size:21px!important}
}

/* v101 — move only the À / Beauty / Spa group 3px upward */
.aspa-section-tab{transform:translateY(4px)!important}
.aspa-active-ring{top:19px!important}
@media(max-width:480px){
 .aspa-section-tab{transform:translateY(4px)!important}
 .aspa-active-ring{top:18px!important}
}

/* v102 — move Booking, Zalo, Messenger and Avatar 5px downward */
.aspa-nav-stack .aspa-tab-icon{transform:translateY(4px)!important}
.aspa-nav-stack .aspa-booking-icon{transform:translateY(-4px)!important}
@media(max-width:480px){
 .aspa-nav-stack .aspa-tab-icon{transform:translateY(4px)!important}
 .aspa-nav-stack .aspa-booking-icon{transform:translateY(-2px)!important}
}

/* v116 — restore four action labels and align all six menu groups */
.aspa-section-tab,.aspa-nav-stack{
  display:grid!important;
  grid-template-rows:47px 13px!important;
  align-content:start!important;
  align-items:center!important;
  justify-items:center!important;
  justify-content:stretch!important;
  gap:0!important;
  transform:translateY(4px)!important;
}
.aspa-section-tab .aspa-tab-icon,.aspa-nav-stack .aspa-tab-icon,
.aspa-nav-stack .aspa-booking-icon{
  grid-row:1!important;
  align-self:center!important;
  margin:0!important;
  transform:none!important;
}
.aspa-nav-stack .aspa-booking-icon{transform:translateY(-2px)!important}
.aspa-section-tab .aspa-tab-label,.aspa-nav-stack .aspa-tab-label{
  grid-row:2!important;
  align-self:center!important;
  margin:0!important;
  font-size:10.5px!important;
}
@media(max-width:480px){
  .aspa-section-tab,.aspa-nav-stack{grid-template-rows:44px 13px!important;transform:translateY(4px)!important}
  .aspa-section-tab .aspa-tab-label,.aspa-nav-stack .aspa-tab-label{font-size:9px!important}
}

.aspa-bottom-nav a[href="/my-booking.html"] .aspa-tab-label{white-space:normal!important;max-width:100%;line-height:1.05!important;font-size:9px!important;text-align:center;overflow-wrap:normal;padding-inline:1px} 

@media(max-width:480px){.aspa-bottom-nav a[href="/my-booking.html"]{grid-template-rows:44px 24px!important;}.aspa-bottom-nav a[href="/my-booking.html"] .aspa-tab-label{align-self:start!important;line-height:1.1!important;}}

/* v170 — five-item floating navigation, independent of legacy menu rules */
.aspa-bottom-nav{--dock-size:clamp(38px,10vw,52px);box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between!important;grid-template-columns:none!important;left:50%!important;bottom:calc(10px + env(safe-area-inset-bottom))!important;width:min(76%,440px)!important;height:calc(var(--dock-size) + 24px)!important;padding:12px!important;border:0!important;border-radius:999px!important;background:#174b3f!important;box-shadow:0 8px 26px #123d3326!important;overflow:visible!important;transform:translateX(-50%)!important}
.aspa-bottom-nav .dock-button{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 var(--dock-size);width:var(--dock-size);height:var(--dock-size);margin:0;padding:3px;border:0;border-radius:50%;background:#f7faf8;color:#174b3f;text-decoration:none;font:500 clamp(8px,2vw,11px)/1.05 'Montserrat',Arial,sans-serif;cursor:pointer;gap:0;position:relative}
.aspa-bottom-nav .dock-button.is-active{background:#91ac83;color:#fff}
.aspa-bottom-nav .dock-button:focus-visible{outline:2px solid #cfb570;outline-offset:3px}
.aspa-bottom-nav .dock-button.beauty img{width:65%;height:65%;object-fit:contain;filter:brightness(0) saturate(100%);opacity:.8}
.aspa-bottom-nav .dock-button.beauty.is-active img{filter:brightness(0) invert(1)}
.aspa-bottom-nav .dock-monogram{font:400 calc(var(--dock-size)*.58)/1 Georgia,serif}
.aspa-bottom-nav .dock-button.dock-account{flex-basis:calc(var(--dock-size)*1.10);width:calc(var(--dock-size)*1.10);height:calc(var(--dock-size)*1.10)}
.aspa-bottom-nav .dock-button svg{display:block;width:92%;height:92%;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.aspa-bottom-nav .dock-avatar{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;overflow:hidden}
.aspa-bottom-nav .dock-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.aspa-bottom-nav .dock-zalo{background:transparent;color:#fff;padding:0}
.aspa-bottom-nav .dock-zalo svg{width:100%;height:100%;stroke-width:1.6}
.aspa-bottom-nav .dock-zalo text{stroke:none;fill:currentColor;font:600 13px 'Montserrat',Arial,sans-serif}
body{padding-bottom:calc(104px + env(safe-area-inset-bottom))!important}
.wallet-tabs{justify-content:center!important}
@media(max-width:360px){.aspa-bottom-nav{width:86%!important}}

/* Exact customer-supplied Zalo artwork: white strokes, no extra circular disk. */
.aspa-bottom-nav .dock-zalo-art{position:relative;display:block;width:100%;height:100%;overflow:hidden;mix-blend-mode:screen}
.aspa-bottom-nav .dock-zalo-art img{position:absolute;left:-40%;top:-40%;width:180%;height:180%;max-width:none;object-fit:contain;filter:grayscale(1) invert(1) contrast(2)}
/* Account is exactly 110% of the standard button; photos have no white rim. */
.aspa-bottom-nav .dock-button.dock-account{padding:0!important;border:0!important;outline-offset:3px}
.aspa-bottom-nav .dock-account .dock-avatar{width:100%;height:100%;padding:0;border:0;box-shadow:none}
.aspa-bottom-nav .dock-account .dock-avatar img{display:block;width:100%!important;height:100%!important;border:0!important;outline:0!important;padding:0!important;box-shadow:none!important}
.aspa-bottom-nav .dock-account.is-active::after{content:"";position:absolute;inset:0;border:1px solid #91ac83;border-radius:50%;pointer-events:none}
.aspa-bottom-nav .dock-account svg{width:88%;height:88%;stroke-width:1.1}

/* Show email verification only when the login email actually changes. */
#aspaEmailChangeActions[hidden],#aspaEmailOtpWrap[hidden]{display:none!important}
#aspaEmailChangeActions{margin:0 0 16px;padding:10px 12px;border:1px solid #c3d3ca;border-radius:10px;background:#edf4ee}
.aspa-email-change-hint{margin:0 0 10px;font-size:12px;line-height:1.5;color:#4e6c5d}
#aspaEmailRequest{background:transparent;color:#174b3f;border:1px solid #174b3f;font-size:14px;line-height:1.4;min-height:42px;padding:9px 12px}
#aspaEmailOtpWrap{margin-top:12px}
#aspaAccountSave{margin-top:10px}
