*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background-color:#0d1117;color:#8b949e;font-family:Fira Code,monospace;overflow-y:auto}body:after{content:" ";display:block;position:absolute;top:0;left:0;width:100vw;height:100vh;background:repeating-linear-gradient(0deg,rgba(0,0,0,.2),rgba(0,0,0,.2) 1px,transparent 1px,transparent 2px);pointer-events:none;z-index:9999}.instance-card{border:1px solid #21262D;padding:1.5rem;transition:border-color .3s,box-shadow .3s;display:flex;flex-direction:column;height:fit-content;min-height:200px;box-sizing:border-box}.instance-card:hover{border-color:#39ff14;box-shadow:0 0 10px #39ff1480}.card-title{color:#39ff14;font-size:1.2rem;margin-bottom:1rem;position:relative}.instance-card:hover .glitch{animation:glitch 1s linear infinite}@keyframes glitch{2%,64%{transform:translate(2px) skew(0)}4%,60%{transform:translate(-2px) skew(0)}62%{transform:translate(0) skew(5deg)}}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%}.instance-card:hover .glitch:before{animation:glitch 1s linear infinite;left:2px;text-shadow:-2px 0 #ff00c1;clip:rect(44px,450px,56px,0)}.instance-card:hover .glitch:after{animation:glitch 1.5s linear infinite;left:-2px;text-shadow:-2px 0 #00fff9,2px 2px #ff00c1;clip:rect(85px,450px,90px,0)}.card-info{color:#8b949e;margin-bottom:.5rem}.card-actions{margin-top:1rem;display:flex;gap:1rem}.launch-button,.delete-button{display:inline-block;padding:.5rem 1rem;border:1px solid #39FF14;color:#39ff14;text-decoration:none;background-color:transparent;cursor:pointer;font-family:Fira Code,monospace;transition:background-color .3s,color .3s}.launch-button:hover{background-color:#39ff14;color:#0d1117}.delete-button{border-color:#ff4d4d;color:#ff4d4d}.delete-button:hover{background-color:#ff4d4d;color:#0d1117}@media (max-width: 768px){.instance-card{padding:1rem;min-height:180px}.card-actions{flex-direction:column;gap:.5rem}.launch-button,.delete-button{text-align:center;padding:.75rem}}.login-container{max-width:400px;margin:5rem auto;padding:2rem;border:1px solid #21262D}.login-title{color:#39ff14;margin-bottom:2rem;text-align:center}.login-form .form-group{margin-bottom:1.5rem}.login-form label{display:block;color:#8b949e;margin-bottom:.5rem}.login-form input{width:100%;background-color:#0d1117;border:1px solid #21262D;color:#39ff14;padding:.75rem;font-family:Fira Code,monospace}.login-form input:focus{outline:none;border-color:#39ff14;box-shadow:0 0 5px #39ff14}.login-button{width:100%;padding:.75rem;background-color:transparent;border:1px solid #39FF14;color:#39ff14;cursor:pointer;font-family:Fira Code,monospace;transition:background-color .3s,color .3s}.login-button:hover{background-color:#39ff14;color:#0d1117}.error-message{color:#ff4d4d;text-align:center;margin-top:1rem}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#0d1117;border:1px solid #21262D;padding:2rem;width:90%;max-width:600px}.modal-title{color:#39ff14;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;color:#8b949e;margin-bottom:.5rem}.form-group input[type=text]{width:100%;background-color:#161b22;border:1px solid #21262D;color:#39ff14;padding:.75rem;font-family:Fira Code,monospace}.dropzone{border:2px dashed #21262D;padding:2rem;text-align:center;color:#8b949e}.dropzone p{margin-bottom:1rem}.file-input-group input[type=file]{display:none}.file-input-label{border:1px solid #39FF14;color:#39ff14;padding:.5rem 1rem;cursor:pointer;display:inline-block;margin:.5rem}.file-input-label:hover{background-color:#39ff14;color:#0d1117}.file-name{color:#8b949e;font-style:italic;margin-left:1rem}.modal-actions{margin-top:2rem;display:flex;justify-content:flex-end;gap:1rem}.action-button{padding:.75rem 1.5rem;font-family:Fira Code,monospace;cursor:pointer;border:1px solid;background-color:transparent}.deploy-button{border-color:#39ff14;color:#39ff14}.deploy-button:hover{background-color:#39ff14;color:#0d1117}.cancel-button{border-color:#8b949e;color:#8b949e}.cancel-button:hover{background-color:#8b949e;color:#0d1117}.initiate-deploy-button{width:100%;padding:1rem;margin-bottom:2rem;background-color:transparent;border:1px dashed #39FF14;color:#39ff14;cursor:pointer;font-family:Fira Code,monospace;font-size:1.1rem;transition:background-color .3s,color .3s}.initiate-deploy-button:hover{background-color:#39ff141a}.dashboard-page{padding:1rem}.instance-list-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;width:100%;padding:1rem 0}@media (max-width: 768px){.dashboard-page{padding:.5rem}.instance-list-container{grid-template-columns:1fr;gap:1rem}}.blinking-cursor{animation:blink 1s step-end infinite}@keyframes blink{0%,to{color:transparent}50%{color:#39ff14}}.app-container{display:flex;flex-direction:column;min-height:100vh}.header,.footer{padding:1rem;color:#39ff14;background-color:#161b22;border-bottom:1px solid #21262D}.footer{border-top:1px solid #21262D;border-bottom:none;margin-top:auto;text-align:center;font-style:italic;color:#8b949e}.main-content{flex:1;padding:2rem;overflow-y:auto}
