@keyframes rotate{to{transform:rotate(1turn)}}.replay-overlay{background:-moz-linear-gradient(top,hsla(0,0%,100%,0) -1.45%,#fff 26.66%);background:linear-gradient(180deg,hsla(0,0%,100%,0) -1.45%,#fff 26.66%)}.rainbow{position:relative;z-index:0;overflow:hidden;box-shadow:0 8px 20px 0 rgba(148,143,255,.102)}.rainbow:before{content:"";position:absolute;z-index:-2;width:100%;height:100%;background-origin:border-box;background-repeat:no-repeat;background-image:-moz-linear-gradient(left,#86c1ff 0,#948fff 80.81%);background-image:linear-gradient(90deg,#86c1ff,#948fff 80.81%)}.rainbow:after{content:"";position:absolute;z-index:-1;left:1px;top:1px;width:-moz-calc(100% - 2px);width:calc(100% - 2px);height:-moz-calc(100% - 2px);height:calc(100% - 2px);background:#fff;border-radius:19px;opacity:1}.home-container{display:-moz-box;display:flex;flex-direction:column;height:100vh;margin:0 auto}.input-container{display:-moz-box;display:flex;padding:10px;border:1px solid #eaeaea;border-radius:8px;background-color:#f9f9f9}.input-container input{flex:1;padding:10px;border:1px solid #ddd;border-radius:4px;outline:none}.input-container input:focus{border-color:#007aff}.input-container button{margin-left:10px;padding:10px 20px;background-color:#007aff;color:#fff;border:none;border-radius:4px;cursor:pointer}.input-container button:hover{background-color:#06c}.replay-control-panel{background:-moz-linear-gradient(315deg,#f8f9fa 0,#e9ecef 100%);background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #dee2e6;box-shadow:0 2px 4px rgba(0,0,0,.1)}.replay-status-indicator.playing{animation:pulse 2s infinite}.replay-status-indicator.paused{opacity:.8}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.messages-container .current-message{position:relative}@keyframes glow{0%{box-shadow:0 0 5px #007aff}to{box-shadow:0 0 20px #007aff,0 0 30px #007aff}}@media(max-width:768px){.replay-control-panel{padding:12px}.replay-control-panel .flex-wrap{gap:8px}.replay-control-panel .status-indicators{flex-direction:column;align-items:flex-start;gap:4px}}