/* =====================================================================
   V16.22 — Final micro UI polish
   - Right quick dock: equal button geometry + equal optical brand footprint
   - Left Quick Access: cleaner porcelain/graphite system, less legacy beige
   ===================================================================== */

/* ---------- Right quick action dock ---------- */
.v98-quick-root.v73-wa{
  right:18px!important;
  bottom:18px!important;
}
.v98-quick-actions{
  gap:9px!important;
  padding:8px!important;
  border:1px solid rgba(45,49,58,.09)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 18px 50px rgba(35,39,47,.13)!important;
  backdrop-filter:blur(18px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.08)!important;
}
.v98-quick-action{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  border-radius:50%!important;
  border:1px solid rgba(45,49,58,.10)!important;
  background:#fff!important;
  color:#30343e!important;
  box-shadow:0 6px 16px rgba(35,39,47,.055)!important;
  overflow:visible;
}
.v98-quick-action:hover,
.v98-quick-action:focus-visible{
  transform:translateY(-2px)!important;
  border-color:rgba(157,126,111,.28)!important;
  box-shadow:0 10px 24px rgba(35,39,47,.11)!important;
}
.v98-quick-action .v99-icon-stroke{
  width:22px!important;
  height:22px!important;
  stroke-width:1.7!important;
}
/* Every official brand mark occupies exactly the same optical canvas. */
.v98-quick-action .v99-icon-brand-svg,
.v98-quick-action.is-whatsapp .v99-icon-brand-svg,
.v98-quick-action.is-instagram .se155-social-svg,
.v98-quick-action.is-linkedin .se155-social-svg,
.v98-quick-action.is-maps .v99-icon-brand-svg{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  min-height:24px!important;
  max-width:24px!important;
  max-height:24px!important;
  display:block!important;
}
.v98-quick-action.is-phone,
.v98-quick-action.is-mail,
.v98-quick-action.is-whatsapp,
.v98-quick-action.is-instagram,
.v98-quick-action.is-linkedin,
.v98-quick-action.is-maps{
  background:#fff!important;
}
.v98-quick-action.is-phone,
.v98-quick-action.is-mail{color:#30343e!important}
.v98-quick-action.is-whatsapp:hover{box-shadow:0 10px 25px rgba(37,211,102,.16)!important}
.v98-quick-action.is-instagram:hover{box-shadow:0 10px 25px rgba(214,36,159,.14)!important}
.v98-quick-action.is-linkedin:hover{box-shadow:0 10px 25px rgba(10,102,194,.15)!important}
.v98-quick-action.is-maps:hover{box-shadow:0 10px 25px rgba(66,133,244,.14)!important}
.v98-quick-action.is-top,
.v98-quick-action.is-close{
  width:48px!important;
  height:48px!important;
  border-radius:50%!important;
  color:#30343e!important;
}
.v98-quick-action.is-top{
  background:#eee4de!important;
  border-color:rgba(157,126,111,.16)!important;
  box-shadow:none!important;
}
.v98-quick-action.is-close{
  background:#faf7f5!important;
  border-color:rgba(45,49,58,.08)!important;
}
.v98-quick-action.is-top svg,
.v98-quick-action.is-close svg{
  width:21px!important;
  height:21px!important;
  stroke-width:1.65!important;
}
.v98-quick-action::before{
  right:58px!important;
  padding:7px 10px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:10px!important;
  background:rgba(47,52,62,.96)!important;
  box-shadow:0 8px 20px rgba(35,39,47,.12)!important;
  font-size:10.5px!important;
  font-weight:650!important;
}
.v98-quick-launcher{
  width:54px!important;
  height:54px!important;
  border:1px solid rgba(45,49,58,.10)!important;
  border-radius:50%!important;
  background:#30343e!important;
  color:#fff!important;
  box-shadow:0 14px 34px rgba(35,39,47,.18)!important;
}
.v98-quick-launcher svg{width:24px!important;height:24px!important;stroke-width:1.6!important}

/* ---------- Left Quick Access ---------- */
.se122-utility{
  --se122-ink:#30343e;
  --se122-accent:#9b7c6d;
  --se122-paper:#ffffff;
  --se122-line:rgba(45,49,58,.09);
  left:18px!important;
  bottom:18px!important;
}
.se122-utility-launcher{
  min-height:58px!important;
  padding:6px 15px 6px 6px!important;
  gap:11px!important;
  border:1px solid rgba(45,49,58,.09)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.93)!important;
  color:var(--se122-ink)!important;
  box-shadow:0 16px 42px rgba(35,39,47,.12)!important;
  backdrop-filter:blur(18px) saturate(1.06)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.06)!important;
}
.se122-utility-launcher:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(155,124,109,.24)!important;
  box-shadow:0 19px 48px rgba(35,39,47,.15)!important;
}
.se122-utility-launcher-icon{
  width:44px!important;
  height:44px!important;
  flex:0 0 44px!important;
  border:1px solid rgba(45,49,58,.08)!important;
  border-radius:50%!important;
  background:#30343e!important;
  color:#fff!important;
  box-shadow:none!important;
}
.se122-utility-launcher-icon::after{display:none!important}
.se122-utility-launcher-icon svg{
  width:19px!important;
  height:19px!important;
  stroke-width:1.55!important;
}
.se122-utility-launcher-copy{gap:2px!important}
.se122-utility-launcher-copy small{
  color:#9b7c6d!important;
  font-size:.56rem!important;
  font-weight:760!important;
  letter-spacing:.20em!important;
}
.se122-utility-launcher-copy strong{
  color:#30343e!important;
  font-size:.95rem!important;
  font-weight:700!important;
  letter-spacing:-.015em!important;
}
.se122-utility-panel{
  bottom:70px!important;
  width:min(356px,calc(100vw - 36px))!important;
  padding:18px!important;
  border:1px solid rgba(45,49,58,.09)!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.965)!important;
  box-shadow:0 28px 72px rgba(35,39,47,.17)!important;
  backdrop-filter:blur(20px) saturate(1.04)!important;
  -webkit-backdrop-filter:blur(20px) saturate(1.04)!important;
}
.se122-utility-head{
  padding:2px 2px 15px!important;
  border-bottom:1px solid rgba(45,49,58,.08)!important;
}
.se122-utility-head>div{gap:4px!important}
.se122-utility-head small{
  color:#9b7c6d!important;
  font-size:.58rem!important;
  letter-spacing:.19em!important;
}
.se122-utility-head strong{
  color:#30343e!important;
  font-size:1.06rem!important;
  font-weight:690!important;
}
.se122-utility-close{
  width:38px!important;
  height:38px!important;
  border:1px solid rgba(45,49,58,.09)!important;
  border-radius:50%!important;
  background:#f7f7f6!important;
  color:#30343e!important;
}
.se122-utility-close:hover{background:#30343e!important;color:#fff!important}
.se122-utility-links{
  gap:3px!important;
  padding:11px 0 2px!important;
}
.se122-utility-links a{
  grid-template-columns:44px minmax(0,1fr) 18px!important;
  gap:12px!important;
  min-height:66px!important;
  padding:8px 8px!important;
  border:1px solid transparent!important;
  border-radius:17px!important;
  background:transparent!important;
  color:#30343e!important;
}
.se122-utility-links a:hover,
.se122-utility-links a:focus-visible{
  transform:translateX(2px)!important;
  border-color:rgba(45,49,58,.075)!important;
  background:#f7f7f6!important;
}
.se122-utility-icon{
  width:44px!important;
  height:44px!important;
  border:1px solid rgba(45,49,58,.075)!important;
  border-radius:14px!important;
  background:#f5f5f4!important;
  color:#30343e!important;
  transition:background .18s ease,color .18s ease,border-color .18s ease!important;
}
.se122-utility-links a:hover .se122-utility-icon,
.se122-utility-links a:focus-visible .se122-utility-icon{
  background:#30343e!important;
  color:#fff!important;
  border-color:#30343e!important;
}
.se122-utility-icon svg{
  width:19px!important;
  height:19px!important;
  stroke-width:1.55!important;
}
.se122-utility-links strong{
  color:#30343e!important;
  font-size:.91rem!important;
  font-weight:680!important;
  letter-spacing:-.01em!important;
}
.se122-utility-links small{
  color:#7c828b!important;
  font-size:.71rem!important;
  line-height:1.3!important;
}
.se122-utility-links i{
  color:#9b7c6d!important;
  font-size:.92rem!important;
}
.se122-utility-foot{
  margin-top:10px!important;
  padding:13px 4px 1px!important;
  border-top:1px solid rgba(45,49,58,.08)!important;
}
.se122-utility-foot span{
  color:#90949b!important;
  font-size:.58rem!important;
  letter-spacing:.18em!important;
}
.se122-utility-foot a{color:#30343e!important;font-weight:680!important}
.se122-utility-foot b{color:#9b7c6d!important}

@media(max-width:760px){
  .v98-quick-root.v73-wa{right:10px!important;bottom:max(10px,env(safe-area-inset-bottom))!important}
  .v98-quick-actions{gap:7px!important;padding:7px!important}
  .v98-quick-action{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
  .v98-quick-action .v99-icon-brand-svg,
  .v98-quick-action.is-whatsapp .v99-icon-brand-svg,
  .v98-quick-action.is-instagram .se155-social-svg,
  .v98-quick-action.is-linkedin .se155-social-svg,
  .v98-quick-action.is-maps .v99-icon-brand-svg{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;max-width:22px!important;max-height:22px!important}
  .v98-quick-action.is-top,.v98-quick-action.is-close{width:44px!important;height:44px!important}

  .se122-utility{left:10px!important;bottom:max(10px,env(safe-area-inset-bottom))!important}
  .se122-utility-launcher{width:52px!important;height:52px!important;min-height:52px!important;padding:4px!important}
  .se122-utility-launcher-icon{width:42px!important;height:42px!important;flex-basis:42px!important}
  .se122-utility-panel{left:10px!important;right:10px!important;bottom:72px!important;width:auto!important;padding:15px!important;border-radius:24px!important}
  .se122-utility-links{grid-template-columns:1fr 1fr!important;gap:5px!important}
  .se122-utility-links a{grid-template-columns:40px minmax(0,1fr)!important;min-height:66px!important;padding:7px!important;border-radius:15px!important}
  .se122-utility-icon{width:40px!important;height:40px!important;border-radius:13px!important}
  .se122-utility-links a>i{display:none!important}
  .se122-utility-links small{display:none!important}
  .se122-utility-links strong{font-size:.82rem!important}
}
@media(max-width:420px){
  .se122-utility-links{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){
  .v98-quick-action,.v98-quick-launcher,.se122-utility-launcher,.se122-utility-panel,.se122-utility-links a,.se122-utility-icon{transition:none!important;transform:none!important}
}
