/* Download-button presentation only; no URL or navigation is configured. */
body.has-download-dock{
  padding-bottom:130px;
  padding-bottom:calc(var(--download-dock-space,116px) + env(safe-area-inset-bottom,0px));
}
.download-dock{
  position:fixed;
  left:50%;
  bottom:12px;
  bottom:calc(12px + env(safe-area-inset-bottom,0px));
  z-index:40;
  width:calc(100% - 28px);
  max-width:644px;
  transform:translateX(-50%);
  padding:5px;
  border:1px solid rgba(255,255,255,.88);
  border-radius:26px;
  background:rgba(255,242,248,.78);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  box-shadow:0 10px 34px rgba(110,24,68,.20),0 2px 8px rgba(255,255,255,.4) inset;
}
.download-dock[hidden]{display:none;}
.download-dock-safe-probe{
  position:fixed;
  left:0;
  top:0;
  width:0;
  height:0;
  padding:0;
  padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);
  visibility:hidden;
  pointer-events:none;
}
.download-button{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  align-items:center;
  width:100%;
  min-width:0;
  min-height:64px;
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:20px;
  background:linear-gradient(110deg,#FF6EA5 0%,#E91F68 36%,#D81759 100%);
  box-shadow:0 7px 20px rgba(255,31,106,.30),0 1px 0 rgba(255,255,255,.3) inset;
  color:#fff;
  font:inherit;
  text-align:right;
  direction:rtl;
  -webkit-appearance:none;
  appearance:none;
  cursor:default;
}
.download-button::before{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  top:-70%;
  left:-65%;
  width:38%;
  height:240%;
  transform:skewX(-22deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);
  animation:download-sheen 7s ease-in-out infinite;
}
.download-button::after{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(220px 100px at 90% -20%,rgba(255,255,255,.20),transparent 70%);
}
.download-button__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 40px;
  width:40px;
  height:40px;
  margin-left:12px;
  border:1px solid rgba(255,255,255,.30);
  border-radius:14px;
  background:rgba(255,255,255,.16);
  box-shadow:0 1px 0 rgba(255,255,255,.14) inset;
}
.download-button__icon svg{display:block;width:25px;height:25px;}
.download-button__copy{flex:1;min-width:0;display:flex;flex-direction:column;}
.download-button__title{
  display:block;
  font-size:18px;
  line-height:1.35;
  font-weight:900;
  letter-spacing:0;
  overflow-wrap:break-word;
  text-shadow:0 1px 2px rgba(157,13,72,.18);
}
.download-button__subtitle{
  display:block;
  margin-top:2px;
  font-size:11px;
  line-height:1.5;
  font-weight:500;
  opacity:.94;
  overflow-wrap:break-word;
}
.download-button__arrow{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 30px;
  width:30px;
  height:30px;
  margin-right:12px;
  border-radius:50%;
  background:rgba(255,255,255,.96);
  box-shadow:0 3px 9px rgba(130,18,61,.13);
  color:var(--pink-600);
}
.download-button__arrow svg{display:block;width:17px;height:17px;}
.download-button:focus-visible{outline:3px solid #2563EB;outline-offset:4px;}
@keyframes download-sheen{
  0%{left:-65%;opacity:0;}
  3%{opacity:1;}
  23%{left:130%;opacity:1;}
  24%,100%{left:130%;opacity:0;}
}
.download-dock.is-compact .download-button{min-height:54px;padding:8px 12px;}
.download-dock.is-compact .download-button__icon{flex-basis:34px;width:34px;height:34px;margin-left:10px;border-radius:12px;}
.download-dock.is-compact .download-button__arrow{display:none;}
.download-dock.is-compact .download-button__title{font-size:16px;}
.download-dock.is-mini .download-button{min-height:52px;padding:8px 10px;}
.download-dock.is-mini .download-button__icon{flex-basis:28px;width:28px;height:28px;margin-left:8px;border-radius:10px;}
.download-dock.is-mini .download-button__icon svg{width:21px;height:21px;}
.download-dock.is-mini .download-button__subtitle{display:none;}
.download-dock.is-mini .download-button__title{font-size:14px;}
.download-dock.is-zoomed .download-button::before{animation:none;opacity:0;}
@media (min-width:640px) and (hover:hover) and (pointer:fine){
  .download-dock{max-width:394px;}
}
/* CSS-only fallback before JS has measured the available phone width. */
@media (max-width:340px), (orientation:landscape) and (max-height:450px){
  .download-button{min-height:54px;padding:8px 12px;}
  .download-button__icon{flex-basis:34px;width:34px;height:34px;margin-left:10px;}
  .download-button__arrow{display:none;}
  .download-button__title{font-size:16px;}
}
@media (max-width:260px){
  .download-button__subtitle{display:none;}
  .download-button__title{font-size:14px;}
}
@media (prefers-reduced-motion:reduce){
  .download-button::before{animation:none;opacity:0;}
}
