.floatingDownloadDock{z-index:920;pointer-events:none;flex-direction:column;align-items:flex-end;gap:12px;animation:.42s cubic-bezier(.16,1,.3,1) floatingDockEntrance;display:flex;position:fixed;bottom:24px;right:24px}.floatingDownloadDock>*{pointer-events:auto}@keyframes floatingDockEntrance{0%{opacity:0;transform:translateY(18px)scale(.84)}to{opacity:1;transform:translateY(0)scale(1)}}.floatingDownloadMenu{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.floatingDownloadOptionRow{cursor:pointer;color:inherit;background:0 0;border:0;align-items:center;gap:10px;padding:0;animation:.22s cubic-bezier(.16,1,.3,1) backwards floatingOptionIn;display:inline-flex}.floatingDownloadOptionRow:nth-child(2){animation-delay:40ms}.floatingDownloadOptionRow:disabled{cursor:wait;opacity:.85}@keyframes floatingOptionIn{0%{opacity:0;transform:translateY(10px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.floatingDownloadOptionPill{-webkit-backdrop-filter:blur(12px);background:#091812f0;border:1.5px solid #ffe0a06b;border-radius:9999px;flex-direction:column;align-items:flex-end;padding:7px 14px;transition:transform .18s,border-color .18s,background .18s;display:inline-flex;box-shadow:0 8px 24px #0000006b}.floatingDownloadOptionPill strong{color:#fff8eb;white-space:nowrap;font-size:13px;font-weight:850;line-height:1.15}.floatingDownloadOptionPill small{color:#f6d58e;white-space:nowrap;font-size:10.5px;font-weight:700;line-height:1.2}.floatingDownloadOptionCircle{color:#ffe8b3;background:linear-gradient(145deg,#13533e 0%,#0d3b2c 100%);border:1.5px solid #ffe0a0b8;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s,border-color .2s;display:inline-flex;position:relative;box-shadow:0 10px 26px #06140f8c,inset 0 1px #fff3}.floatingDownloadOptionBadge{color:#161108;letter-spacing:.03em;white-space:nowrap;background:#f6c453;border:1.5px solid #0b2219;border-radius:9999px;padding:1px 6px;font-size:9px;font-weight:900;line-height:1.2;position:absolute;bottom:-4px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #00000059}.floatingDownloadOptionRow:hover:not(:disabled) .floatingDownloadOptionCircle{border-color:#fde68a;transform:translateY(-2px)scale(1.06);box-shadow:0 12px 30px #10463585,0 0 14px #f6c45352}.floatingDownloadOptionRow:hover:not(:disabled) .floatingDownloadOptionPill{background:#0c2219fa;border-color:#ffe0a0c7;transform:translate(-2px)}.floatingDownloadDock.tone-ruby .floatingDownloadOptionPill{background:#180a0ff0;border-color:#fda4af6b}.floatingDownloadDock.tone-ruby .floatingDownloadOptionPill small{color:#fda4af}.floatingDownloadDock.tone-ruby .floatingDownloadOptionCircle{color:#fff2d6;background:linear-gradient(145deg,#be123c 0%,#881337 100%);border-color:#ffe0a0bd;box-shadow:0 10px 26px #3c0a188c,inset 0 1px #ffffff38}.floatingDownloadDock.tone-ruby .floatingDownloadOptionBadge{border-color:#2b0913}.floatingDownloadTriggerWrap{align-items:center;gap:10px;display:inline-flex}.floatingDownloadHintTag{color:#ffe8b3;letter-spacing:.01em;-webkit-backdrop-filter:blur(10px);cursor:pointer;white-space:nowrap;background:#091812eb;border:1px solid #ffe0a073;border-radius:9999px;padding:6px 12px;font-size:12px;font-weight:850;transition:transform .28s,border-color .2s,opacity .28s;animation:.28s cubic-bezier(.16,1,.3,1) backwards floatingHintIn;box-shadow:0 8px 22px #00000059}@keyframes floatingHintIn{0%{opacity:0;transform:translate(10px)scale(.94)}to{opacity:1;transform:translate(0)scale(1)}}.floatingDownloadHintTag.isExiting{opacity:0;pointer-events:none;transform:translate(8px)scale(.95)}.floatingDownloadDock.tone-ruby .floatingDownloadHintTag{color:#ffe4e6;background:#180a0feb;border-color:#fda4af73}.floatingDownloadHintTag:hover{border-color:#fde68a;transform:translateY(-2px)}.floatingDownloadTrigger{color:#ffe8b3;cursor:pointer;background:linear-gradient(145deg,#145a43 0%,#0d3c2c 100%);border:2px solid #ffe0a0c7;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,background .22s;display:inline-flex;position:relative;box-shadow:0 12px 32px #081c158f,0 0 0 1px #ffffff24,inset 0 1px #ffffff42}.floatingDownloadDock.tone-ruby .floatingDownloadTrigger{color:#fff6e5;background:linear-gradient(145deg,#e11d48 0%,#9f1239 100%);border-color:#ffe0a0cc;box-shadow:0 12px 32px #690e268f,0 0 0 1px #ffffff2e,inset 0 1px #ffffff47}.floatingDownloadTrigger:before{content:"";opacity:0;pointer-events:none;border:1.5px solid #f6c45373;border-radius:50%;animation:2.6s ease-out infinite floatingTriggerPulse;position:absolute;inset:-5px}.floatingDownloadTrigger.isOpen:before{opacity:0;animation:none}@keyframes floatingTriggerPulse{0%{opacity:.75;transform:scale(.92)}70%{opacity:0;transform:scale(1.22)}to{opacity:0;transform:scale(1.22)}}.floatingDownloadTrigger:hover{transform:translateY(-3px)scale(1.05);box-shadow:0 16px 38px #081c15a6,0 0 20px #f6c45357}.floatingDownloadTrigger:active{transform:scale(.96)}.floatingDownloadTriggerReadyDot{background:#22c55e;border:2px solid #092017;border-radius:50%;width:12px;height:12px;position:absolute;top:2px;right:2px;box-shadow:0 0 8px #22c55ecc}.floatingDownloadSpinner{animation:.85s linear infinite floatingSpin}@keyframes floatingSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.floatingDownloadTrigger:focus-visible,.floatingDownloadHintTag:focus-visible,.floatingDownloadOptionRow:focus-visible{outline-offset:3px;outline:2.5px solid #fde68a}@media (width<=768px){.floatingDownloadDock{right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));gap:10px}.floatingDownloadTrigger{width:56px;height:56px}.floatingDownloadOptionCircle{width:50px;height:50px}.floatingDownloadHintTag{padding:5px 10px;font-size:11px}}@media (prefers-reduced-motion:reduce){.floatingDownloadDock,.floatingDownloadOptionRow,.floatingDownloadHintTag,.floatingDownloadTrigger:before,.floatingDownloadSpinner{animation:none}.floatingDownloadTrigger,.floatingDownloadOptionCircle,.floatingDownloadOptionPill,.floatingDownloadHintTag{transition:none}}
