:root{font-family:Inter,system-ui,Segoe UI,sans-serif;color:#e8eef8;background:#0c1422}*{box-sizing:border-box}body{margin:0}main{max-width:1100px;margin:auto;padding:20px}header,.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}header{justify-content:space-between;padding:12px 0 28px}header strong{font-size:1.3rem}header span,p,.hint{color:#9dadc5}h1{font-size:1.8rem;margin:0 0 12px}h2{font-size:1.2rem}button,input{font:inherit;border-radius:9px;padding:11px 14px}button{background:#5a8dff;border:1px solid #5a8dff;color:#071326;font-weight:700;cursor:pointer}button:hover{filter:brightness(1.13)}button:disabled{opacity:.5;cursor:default}.secondary{background:#1b2c48;color:#d9e8ff;border-color:#304766}input{background:#0f1c30;border:1px solid #344965;color:#fff;min-width:0}input:focus,button:focus-visible,#screen:focus{outline:2px solid #82aaff;outline-offset:2px}label{display:grid;gap:6px;margin:14px 0}.card{background:#132238;border:1px solid #29405e;border-radius:14px;padding:20px;margin:16px 0}#auth{max-width:440px;margin:8vh auto}.spread{justify-content:space-between}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.cards .card{margin:0}.device-title{font-weight:700;font-size:1.1rem}.online{color:#62d89b}.offline{color:#edb372}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#0a1526;padding:14px;border-radius:8px}#screenWrap{position:relative;background:#03070e;border:1px solid #304766;border-radius:12px;overflow:hidden;min-height:220px;display:flex;align-items:center;justify-content:center;touch-action:none}#screen{display:block;max-width:100%;max-height:72vh;user-select:none;touch-action:none}#screenHint{position:absolute;pointer-events:none;color:#aebdd2}#dropZone{border:2px dashed #536d91;border-radius:10px;padding:24px;text-align:center;margin-top:15px;color:#aebdd2}#dropZone.active{background:#213c62}#files{display:grid;gap:8px}#files button{text-align:left}#message{min-height:24px;color:#ffb88b}@media(max-width:650px){main{padding:12px}.card{padding:14px}#deviceForm input{flex:1}#screenWrap{min-height:160px}}
.stat{display:grid;gap:4px}.stat strong{font-size:2rem;color:#91b5ff}.stat span{color:#9dadc5}.tableWrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.93rem}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid #29405e;white-space:nowrap}th{color:#9dadc5;font-weight:600}tbody tr:hover{background:#1b2c48}
