@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.hover-border{border-radius:14px;transition:all .25s cubic-bezier(.4,0,.2,1);padding:.25rem!important}.hover-border:hover{border-radius:2.875rem;background-color:#f0f0f0;border-color:#ff5c35;box-shadow:0 4px 12px #00000014,0 0 0 2px #ff5c351f;transform:translateY(-2px)}.hover-border:active{transform:translateY(0);box-shadow:0 2px 6px #0000000f,0 0 0 2px #ff5c352e}.hover-lift{transition:transform .3s cubic-bezier(.4,0,.2,1);will-change:transform}.hover-lift:hover{transform:translateY(-3px) scale(1.01)}.hover-lift:active{transform:translateY(-1px) scale(.99);transition-duration:.1s}@keyframes checkboxSuccess{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.topic-card{transition:transform .4s cubic-bezier(.25,.46,.45,.94),box-shadow .4s cubic-bezier(.25,.46,.45,.94),background-color .3s ease;position:relative;overflow:hidden;will-change:transform;border-radius:1.5rem}.topic-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,92,53,.1),transparent);transition:left .6s cubic-bezier(.25,.46,.45,.94);z-index:1}.topic-card:hover:before{left:100%}.topic-card:active{transform:translateY(-2px) scale(1.01);transition-duration:.1s}.button-animate{transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),background-color .2s ease;position:relative;overflow:hidden;will-change:transform}.button-animate:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);border-radius:50%;transform:translate(-50%,-50%);transition:width .4s cubic-bezier(.4,0,.2,1),height .4s cubic-bezier(.4,0,.2,1);pointer-events:none}.button-animate:active:before{width:300px;height:300px;transition-duration:0s}.button-animate:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 25px #ff5c3540}.button-animate:active{transform:translateY(-1px) scale(.98);transition-duration:.1s}html{scroll-behavior:smooth}.form-check-input:focus{transition:box-shadow .2s ease}.progress-indicator{transition:width .3s ease}.content-transition{transition:opacity .3s ease,transform .3s ease}.content-transition.fade-out{opacity:0;transform:translateY(10px)}.content-transition.fade-in{opacity:1;transform:translateY(0)}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#fffc;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.loading-overlay:after{content:"";width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #ff5c35;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.interactive-element{transition:all .2s ease;cursor:pointer}.interactive-element:hover{transform:scale(1.02)}.interactive-element:active{transform:scale(.98)}*:focus{outline:none}.video-loading{position:relative;pointer-events:none}.video-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:15px;z-index:1000;background:#fffffff2;padding:30px;border-radius:12px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.video-spinner{width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #ff5c35;border-radius:50%;animation:videoSpin 1s linear infinite}.video-error{display:flex;flex-direction:column;align-items:center;gap:10px;color:#dc3545;text-align:center}.video-error i{font-size:24px;color:#dc3545}@keyframes videoSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.video-loaded{animation:videoFadeIn .5s ease-out}@keyframes videoFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.btn-loading{position:relative;pointer-events:none;color:transparent!important}.btn-loading:after{content:"";position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:buttonSpin .8s linear infinite}.btn-loading.btn-sm:after{width:14px;height:14px;margin:-7px 0 0 -7px}.btn-loading.btn-lg:after{width:20px;height:20px;margin:-10px 0 0 -10px}@keyframes buttonSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-text-loading{position:relative;pointer-events:none;transition:all .3s ease}.btn-text-loading .btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:buttonSpin .8s linear infinite;margin-right:8px;vertical-align:middle}.btn-loading,.btn-text-loading{transform:none!important;cursor:not-allowed}.loading-text{opacity:.8;font-size:.9em}.shimmer{background:linear-gradient(90deg,#ffffff1a 25%,#ffffff4d,#ffffff1a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.btn-interactive{transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.btn-interactive:hover:not(:disabled):not(.btn-loading):not(.btn-text-loading){transform:translateY(-1px)}.btn-interactive:active:not(:disabled):not(.btn-loading):not(.btn-text-loading){transform:translateY(0)}.btn-pulse{animation:btnPulse 2s infinite}@media (max-width: 991.98px){.demo-page1-container{height:calc(100vh - 70px)!important;height:calc(100dvh - 70px)!important}}.user-aside{display:flex;flex-direction:column;padding:0;transition:transform .4s cubic-bezier(.4,0,.2,1);will-change:transform}@media (max-width: 991.98px){.user-aside{position:fixed;bottom:0;left:0;right:0;z-index:1050;width:100%!important;max-height:80vh;height:auto;transform:translateY(calc(100% - 52px));background-color:#fff;border-radius:20px 20px 0 0;box-shadow:0 -4px 25px #00000026;overflow:hidden}.bottom-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;cursor:pointer;background:#fff;border-bottom:1px solid #f0f0f0;flex-shrink:0;min-height:52px;-moz-user-select:none;user-select:none;-webkit-user-select:none}.bottom-sheet-header .sheet-title{font-size:14px;font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bottom-sheet-header .sheet-chevron{transition:transform .3s ease;flex-shrink:0;margin-left:12px}.user-aside.bottom-sheet-open .sheet-chevron{transform:rotate(180deg)}.bottom-sheet-header:before{content:"";position:absolute;top:6px;left:50%;transform:translate(-50%);width:36px;height:4px;background-color:#d1d5db;border-radius:2px}.user-aside .card-body{overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:20px!important}.user-aside.bottom-sheet-open{transform:translateY(0)}.user-aside:before{display:none}}.bottom-sheet-overlay{display:none!important}@media (min-width: 992px){.user-aside{position:static!important;transform:translate(0)!important;height:auto!important;width:350px;min-width:350px;border-radius:16px;max-height:none;box-shadow:none;overflow:visible}.user-aside:before{display:none}.bottom-sheet-overlay{display:none!important}}.basic-aside{display:flex;flex-direction:column;padding:0}@media (max-width: 991.98px){.basic-aside{width:100%!important;flex-shrink:0;margin-bottom:16px}}@media (min-width: 992px){.basic-aside{width:350px;min-width:350px}}.question-item{opacity:0;transform:translateY(32px) scale(.98);transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .45s ease;will-change:transform,opacity}.question-item.show-question{opacity:1;transform:translateY(0) scale(1)}.answer-btn{position:relative;overflow:hidden;opacity:1;transform:translateY(0) scale(1);transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s cubic-bezier(.2,.8,.2,1),background-color .2s ease;will-change:transform}.answer-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 22px #0000001f}.answer-btn:active{transform:translateY(-1px) scale(.97)}.answer-btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.25),transparent 70%);opacity:0;transform:translate(-100%);transition:opacity .25s ease}.answer-btn:hover:after{opacity:1;animation:sheen 1.2s ease}@keyframes sheen{0%{transform:translate(-100%)}to{transform:translate(120%)}}.active-answer{transform:scale(1.04);box-shadow:0 10px 26px #0000001f,0 0 0 2px #3b82f640;transition:all .28s cubic-bezier(.2,.8,.2,1)}.hidden-answer{opacity:0;transform:scale(.9) translateY(12px);filter:blur(4px);pointer-events:none;position:absolute;visibility:hidden;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .35s ease,filter .35s ease}.answer-btn{animation:answerReveal .45s cubic-bezier(.2,.8,.2,1) both}@keyframes answerReveal{0%{opacity:0;transform:translateY(16px) scale(.96);filter:blur(2px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
