*{box-sizing:border-box;margin:0;padding:0;font-family:Inter,Roboto,sans-serif}body{color:#c9d1d9;background:linear-gradient(135deg,#0f111a 0%,#161a29 50%,#0d0f16 100%);flex-direction:column;align-items:center;min-height:100vh;display:flex;overflow-x:hidden}.box-glass{background:#14141473;border:.1vw solid #ffffff0d;border-radius:1vw;transition:transform .3s,border-color .3s;box-shadow:0 1vw 3vw #00000080}.box-glass:hover{border-color:#ffffff1a;transform:translateY(-.2vh)}.login-container{justify-content:center;align-items:center;width:100vw;min-height:100vh;display:flex}.login-box{text-align:center;background:#19191999;border:.1vw solid #ffffff14;border-radius:1.5vw;flex-direction:column;align-items:center;width:40vw;padding:3vw;display:flex}.logo-container{align-items:center;gap:1vw;margin-bottom:1vh;display:flex}.logo-icon{color:#f7931a}h1{background:linear-gradient(90deg,#f7931a,#ffb347);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.5vw;font-weight:700}.subtitle{color:#8b949e;margin-bottom:3vh;font-size:1vw}.login-form input{color:#fff;text-align:center;letter-spacing:.1vw;background:#0a0a0ab3;border:.1vw solid #ffffff1a;border-radius:.5vw;outline:none;width:100%;margin-bottom:2vh;padding:1vw 1.5vw;font-size:1vw;transition:border-color .3s}.login-form input:focus{border-color:#f7931a}.login-form button{color:#fff;cursor:pointer;background:linear-gradient(90deg,#f7931a,#d47a0b);border:none;border-radius:.5vw;width:100%;padding:1vw;font-size:1.2vw;font-weight:600;transition:filter .3s}.login-form button:hover:not(:disabled){filter:brightness(1.2)}.login-form button:disabled{opacity:.5;cursor:not-allowed}.choice-buttons{flex-direction:column;gap:1.5vh;width:100%;margin-top:2vh;display:flex}.divider{text-align:center;color:#484f58;align-items:center;margin:1vh 0;font-size:.8vw;display:flex}.divider:before,.divider:after{content:"";border-bottom:1px solid #30363d;flex:1}.divider:not(:empty):before{margin-right:1.5vw}.divider:not(:empty):after{margin-left:1.5vw}.input-group{background:#0a0a0ab3;border:1px solid #ffffff1a;border-radius:.5vw;align-items:center;gap:1vw;width:100%;margin-bottom:2vh;padding:.8vw 1.2vw;transition:border-color .3s;display:flex}.input-group:focus-within{border-color:#f7931a}.input-group input{color:#fff;background:0 0;border:none;outline:none;flex:1;font-size:1vw}.btn-main{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f7931a,#d47a0b);border:none;border-radius:.5vw;width:100%;padding:1vw;font-size:1.1vw;font-weight:700;transition:transform .2s}.btn-main:hover{filter:brightness(1.1);transform:scale(1.02)}.btn-outline{color:#c9d1d9;cursor:pointer;background:0 0;border:1px solid #30363d;border-radius:.5vw;width:100%;padding:1vw;transition:background .2s}.btn-outline:hover{background:#ffffff0d}.btn-guest{color:#3fb950;cursor:pointer;background:#2ea0431a;border:1px solid #2ea0434d;border-radius:.5vw;width:100%;padding:1vw}.error-text{color:#ff6b6b;margin-bottom:2vh;font-size:.9vw}.btn-link{color:#8b949e;cursor:pointer;background:0 0;border:none;margin-top:1vh;font-size:.9vw}.btn-link:hover{text-decoration:underline}.animate-in{animation:.4s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(1vh)}to{opacity:1;transform:translateY(0)}}.btn-pay{color:#f59e0b;cursor:pointer;background:#f59e0b33;border:1px solid #f59e0b;border-radius:.5vw;margin-top:1vh;padding:.8vw;font-size:.9vw;font-weight:600}.btn-pay:hover:not(:disabled){background:#f59e0b4d}.btn-pay:disabled{opacity:.3;cursor:not-allowed}.user-label{color:#8b949e;background:#ffffff08;border-radius:1vw;align-items:center;gap:.5vw;padding:.4vw 1vw;font-size:.9vw;display:flex}.btn-circle{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:2.5vw;height:2.5vw;transition:all .2s;display:flex}.btn-circle:hover:not(:disabled){background:#f7931a;border-color:#f7931a}.btn-circle:disabled{opacity:.2;cursor:not-allowed}.loading-screen{color:#8b949e;justify-content:center;align-items:center;gap:1vw;height:100vh;display:flex}.custom-modal-overlay{-webkit-backdrop-filter:blur(5px);z-index:9999;background:#0009;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.custom-modal{text-align:center;background:#191919f2;border:1px solid #ffffff1a;border-radius:1vw;width:90%;max-width:30vw;padding:2vw}.custom-modal h2{color:#fff;margin-bottom:1vh;font-size:1.5vw}.custom-modal p{color:#c9d1d9;margin-bottom:3vh;font-size:1.1vw}.custom-modal-actions{gap:1vw;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app-container{width:90vw;max-width:1400px;padding:2vw 0}.navbar{background:#14141466;border-bottom:.1vw solid #ffffff0d;border-radius:1vw;justify-content:space-between;align-items:center;margin-bottom:3vh;padding:1vw 2vw;display:flex}.brand{align-items:center;gap:1vw;display:flex}.brand h1{font-size:1.8vw}.nav-actions{gap:1vw;display:flex}.btn-icon{color:#c9d1d9;cursor:pointer;background:#ffffff0d;border:.1vw solid #ffffff1a;border-radius:.5vw;align-items:center;gap:.5vw;padding:.5vw 1vw;font-size:.9vw;transition:all .2s;display:flex}.btn-icon:hover{background:#ffffff1a}.btn-danger:hover{color:#ff6b6b;background:#e8414233;border-color:#e8414266}.stat-row{gap:2vw;margin-bottom:4vh;display:flex}.stat-card{flex-direction:column;flex:1;padding:1.5vw;display:flex}.stat-card h3{color:#8b949e;text-transform:uppercase;letter-spacing:.1vw;margin-bottom:1vh;font-size:1vw}.stat-value{margin-bottom:1vh;font-size:2vw;font-weight:700}.text-green{color:#2ea043}.text-gold{color:#f7931a}.status-badge{border-radius:2vw;align-self:flex-start;padding:.3vw .8vw;font-size:.8vw;font-weight:600;display:inline-block}.status-badge.online{color:#3fb950;background:#2ea04333;border:.1vw solid #2ea0434d}.status-badge.offline{color:#ff6b6b;background:#e8414233;border:.1vw solid #e841424d}.crypto-list{font-size:1.1vw;list-style:none}.crypto-list li{border-bottom:.1vw solid #ffffff0d;justify-content:space-between;padding:.5vw 0;display:flex}.crypto-list li:last-child{border-bottom:none}.section-title{color:#fff;margin-bottom:2vh;font-size:1.5vw;font-weight:600}.miners-grid{grid-template-columns:repeat(auto-fill,minmax(22vw,1fr));gap:2vw;display:grid}.miner-card{flex-direction:column;padding:1.5vw;display:flex}.miner-error{border-color:#e8414266;box-shadow:0 .5vw 2vw #e841421a}.miner-header{justify-content:space-between;align-items:center;margin-bottom:1.5vh;display:flex}.miner-id{color:#fff;font-size:1.2vw;font-weight:600}.miner-type{color:#f7931a;background:#f7931a33;border-radius:.4vw;padding:.2vw .6vw;font-size:1vw;font-weight:700}.miner-body{margin-bottom:2vh}.miner-stat{justify-content:space-between;margin-bottom:.5vh;font-size:1vw;display:flex}.miner-stat span{color:#8b949e}.miner-alert{color:#ff6b6b;background:#e8414226;border-radius:.5vw;align-items:center;gap:.5vw;margin-bottom:2vh;padding:.8vw;font-size:1vw;display:flex}.miner-actions{gap:1vw;margin-top:auto;display:flex}.btn-action{cursor:pointer;border:none;border-radius:.5vw;flex:1;justify-content:center;align-items:center;gap:.5vw;padding:.8vw;font-size:1vw;font-weight:600;transition:all .2s;display:flex}.btn-primary{color:#fff;background:linear-gradient(90deg,#1f6feb,#388bfd)}.btn-primary:hover:not(.disabled){filter:brightness(1.2)}.btn-success{color:#3fb950;background:#2ea04333;border:.1vw solid #2ea04366}.btn-success:hover:not(.disabled){background:#2ea04366}.disabled{opacity:.4;cursor:not-allowed}.empty-state{text-align:center;color:#8b949e;grid-column:1/-1;padding:3vw;font-size:1.2vw}@media (width<=768px){.login-box{border-radius:4vw;width:90vw;padding:6vw}h1{font-size:7vw}.subtitle{margin-bottom:2vh;font-size:3.5vw}.logo-icon{width:10vw;height:10vw}.login-form input{letter-spacing:normal;border-radius:2vw;padding:3vw;font-size:4vw}.login-form button{border-radius:2vw;padding:3vw;font-size:4.5vw}.hint-text{margin-top:4vh;font-size:3vw}.app-container{width:95vw;padding:4vw 0}.navbar{border-radius:3vw;flex-direction:column;gap:3vw;padding:4vw}.brand h1{font-size:5vw}.icon-gold{width:6vw;height:6vw}.nav-actions{justify-content:space-between;width:100%}.btn-icon{border-radius:2vw;flex:1;justify-content:center;padding:2vw 4vw;font-size:3.5vw}.stat-row{flex-direction:column;gap:4vw}.stat-card{border-radius:3vw;padding:4vw}.stat-card h3{margin-bottom:2vh;font-size:3.5vw}.stat-value{margin-bottom:2vh;font-size:8vw}.status-badge{padding:1vw 3vw;font-size:3vw}.crypto-list{font-size:4vw}.crypto-list li{padding:2vw 0}.section-title{margin-bottom:3vh;font-size:5vw}.miners-grid{grid-template-columns:1fr;gap:4vw}.miner-card{border-radius:3vw;padding:4vw}.miner-id{font-size:4.5vw}.miner-type{border-radius:1vw;padding:1vw 2vw;font-size:3.5vw}.miner-stat{margin-bottom:1.5vh;font-size:3.5vw}.miner-alert{border-radius:2vw;padding:3vw;font-size:3.5vw}.miner-actions{flex-direction:row;justify-content:space-around;gap:4vw;margin-top:3vh}.btn-action{border-radius:2vw;width:100%;padding:3vw;font-size:3.5vw}.btn-circle{border-radius:50%;width:14vw;height:14vw}.btn-circle svg{width:5vw;height:5vw}.btn-pay{border-radius:2vw;width:100%;margin-top:2vh;padding:3vw;font-size:3.5vw}.custom-modal{border-radius:3vw;max-width:85vw;padding:5vw}.custom-modal h2{font-size:5vw}.custom-modal p{margin-bottom:4vh;font-size:4vw}.custom-modal-actions{flex-direction:column-reverse;gap:3vw}.custom-modal-actions button{border-radius:2vw;padding:3vw;font-size:4vw}}.toast-notification{z-index:9999;background:#191919f2;border:1px solid #ffffff1a;border-left:4px solid #f7931a;border-radius:.5rem;align-items:center;gap:1rem;padding:1rem 1.5rem;animation:.3s ease-out forwards slideInUp,.3s ease-in 3.2s forwards fadeOut;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 10px 30px #00000080}.toast-notification.success{border-left-color:#2ea043}.toast-notification.error{border-left-color:#da3633}.toast-icon svg{color:#fff;width:24px;height:24px}.toast-notification.success .toast-icon svg{color:#2ea043}.toast-notification.error .toast-icon svg{color:#da3633}.toast-content h4{color:#fff;margin-bottom:.2rem;font-size:1rem}.toast-content p{color:#8b949e;font-size:.85rem}@keyframes slideInUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0;pointer-events:none}}
