@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes stepIndicator{0%{width:8px}to{width:20px}}.fade-in{animation:.5s ease-out fadeIn}.fade-in-up{animation:.5s ease-out fadeInUp}.fade-in-up.delay-1{animation:.5s ease-out .1s both fadeInUp}.fade-in-up.delay-2{animation:.5s ease-out .2s both fadeInUp}.scale-in{animation:.6s cubic-bezier(.34,1.56,.64,1) scaleIn}.scale-in.delay-1{animation:.5s cubic-bezier(.34,1.56,.64,1) .1s both scaleIn}.scale-in.delay-2{animation:.5s cubic-bezier(.34,1.56,.64,1) .2s both scaleIn}.bounce-in{animation:.8s cubic-bezier(.68,-.55,.265,1.55) bounceIn}.slide-up{animation:.35s cubic-bezier(.6,.05,.28,.91) slideUp}.content-slide{animation-duration:.5s;animation-timing-function:cubic-bezier(.4,0,.2,1);animation-fill-mode:both}.content-slide.slide-right{animation-name:slideInRight}.content-slide.slide-left{animation-name:slideInLeft}.modal-overlay{z-index:40;background-color:#0006;position:fixed;inset:0}.modal-drawer{z-index:50;padding:24px 24px 32px;padding-bottom:calc(32px + env(safe-area-inset-bottom));background:#fff;border-radius:24px 24px 0 0;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0000001a}.btn-primary{color:#fff;cursor:pointer;background:#007aff;border:none;border-radius:12px;width:100%;height:50px;font-size:17px;font-weight:500;transition:transform .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 14px #007aff40}.btn-primary:hover{transform:scale(1.02)}.btn-primary:active{transform:scale(.98)}.btn-secondary{color:#007aff;cursor:pointer;background:#efeff4;border:none;border-radius:12px;width:100%;height:50px;font-size:17px;font-weight:500;transition:transform .2s cubic-bezier(.4,0,.2,1)}.btn-secondary:hover{transform:scale(1.02)}.btn-secondary:active{transform:scale(.98)}.btn-success{color:#fff;cursor:pointer;background:#34c759;border:none;border-radius:12px;width:100%;height:50px;font-size:17px;font-weight:500;transition:transform .2s cubic-bezier(.4,0,.2,1);animation:.5s ease-out .5s both fadeInUp;box-shadow:0 4px 14px #34c75940}.btn-success:hover{transform:scale(1.02)}.btn-success:active{transform:scale(.98)}.btn-disabled{color:#8e8e93;cursor:not-allowed;background:#e5e5ea;border:none;border-radius:12px;width:100%;height:50px;font-size:17px;font-weight:500;transition:all .3s}.speaker-btn{cursor:pointer;opacity:.6;z-index:10;background:0 0;border:none;justify-content:center;align-items:center;width:40px;height:40px;transition:opacity .2s,transform .2s;animation:.5s ease-out .3s both fadeIn;display:flex;position:absolute;top:32px;right:24px}.speaker-btn:hover{opacity:1}.speaker-btn:active{transform:scale(.9)}.speaker-btn-modal{cursor:pointer;opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;width:40px;height:40px;transition:opacity .2s,transform .2s;animation:.5s ease-out .2s both fadeIn;display:flex;position:absolute;top:24px;right:24px}.speaker-btn-modal:hover{opacity:1}.speaker-btn-modal:active{transform:scale(.9)}.step-indicator{border-radius:999px;height:8px;transition:width .3s cubic-bezier(.4,0,.2,1),background-color .3s}
