::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.code-block{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;line-height:1.4}@keyframes highlight{0%{background-color:#1976d21a}to{background-color:transparent}}.log-entry-new{animation:highlight 2s ease-out}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite}.email-highlight{background-color:#4caf5033;padding:2px 4px;border-radius:3px;font-weight:500}.status-running{color:#4caf50}.status-stopped{color:#f44336}.status-error{color:#ff9800}@media (max-width: 768px){.mobile-hidden{display:none!important}.mobile-full-width{width:100%!important}}@keyframes pageSlideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes pageSlideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pageSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-30px)}}.page-enter{animation:pageFadeIn .6s cubic-bezier(.4,0,.2,1) forwards}.page-enter-from-right{animation:pageSlideInRight .6s cubic-bezier(.4,0,.2,1) forwards}.page-enter-from-left{animation:pageSlideInLeft .6s cubic-bezier(.4,0,.2,1) forwards}.page-exit{animation:pageSlideOut .4s cubic-bezier(.4,0,.2,1) forwards}.content-box-transition{transition:all .6s cubic-bezier(.4,0,.2,1)}.content-box-hover{transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}.content-box-hover:hover{transform:translateY(-4px);box-shadow:0 20px 40px #00000026!important}.link-transition{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.link-transition:before{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(135deg,#1976d2,#42a5f5);transition:width .3s cubic-bezier(.4,0,.2,1)}.link-transition:hover:before{width:100%}@keyframes buttonRipple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}.button-ripple{position:relative;overflow:hidden}.button-ripple:after{content:"";position:absolute;border-radius:50%;background:#fff9;transform:scale(0);animation:buttonRipple .6s linear;pointer-events:none}
