:root{--bg-0:#0a0e14;--bg-1:#0f1419;--bg-2:#151b23;--bg-3:#1c232e;--border:#2a3441;--border-bright:#3a4a5e;--text:#e6edf3;--text-dim:#8b96a5;--accent:#5b8def;--green:#10b981;--yellow:#f59e0b;--red:#ef4444;--mono:"SF Mono", "JetBrains Mono", "Fira Code", monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--mono);background:var(--bg-0);color:var(--text);font-size:13px;line-height:1.4}.login-page{background:var(--bg-0);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-form{background:var(--bg-1);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;width:300px;padding:32px;display:flex}.login-form h1{text-align:center;margin-bottom:8px;font-size:1.1rem}.login-form input{background:var(--bg-2);border:1px solid var(--border);color:var(--text);font-family:var(--mono);border-radius:6px;outline:none;padding:10px 14px;font-size:.85rem}.login-form input:focus{border-color:var(--accent)}.login-form button{background:var(--accent);color:#fff;font-family:var(--mono);cursor:pointer;border:none;border-radius:6px;padding:10px;font-size:.85rem;font-weight:600}.login-form button:hover{opacity:.9}.login-error{color:var(--red);text-align:center;font-size:.75rem}.logout-btn{background:var(--bg-2);border:1px solid var(--border);color:var(--text-dim);cursor:pointer;font-family:var(--mono);border-radius:5px;padding:4px 12px;font-size:.7rem}.logout-btn:hover{color:var(--red);border-color:var(--red)}.app{min-height:100vh}.app-header{background:var(--bg-1);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 20px;display:flex}.app-header h1{font-size:.95rem;font-weight:600}.device-count{color:var(--text-dim);font-size:.75rem}.phone-wall{flex-wrap:wrap;justify-content:center;gap:16px;padding:20px;display:flex}.no-phone{color:var(--text-dim);text-align:center;width:100%;padding:60px}.phone-card{background:var(--bg-1);border:1px solid var(--border);border-radius:8px;flex-direction:column;width:280px;display:flex;overflow:hidden}.phone-card-header{background:var(--bg-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.phone-card-name{font-size:.8rem;font-weight:600}.phone-card-battery{color:var(--green);font-size:.7rem}.phone-frame{background:#000;min-height:120px;position:relative}.phone-stream-status{z-index:1;background:#0009;border-radius:3px;padding:1px 4px;font-size:.65rem;position:absolute;top:4px;right:6px}.phone-loading{color:var(--text-dim);font-size:.7rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.phone-card-controls{border-top:1px solid var(--border);padding:8px}.control-row{gap:3px;margin-bottom:6px;display:flex}.ctrl-btn{background:var(--bg-2);border:1px solid var(--border);color:var(--text);cursor:pointer;font-family:var(--mono);border-radius:4px;flex:1;padding:6px 2px;font-size:.7rem;transition:all .1s}.ctrl-btn:hover{border-color:var(--border-bright);background:var(--bg-3)}.ctrl-btn:disabled{opacity:.4;cursor:not-allowed}.ctrl-ig{border-color:var(--accent);color:var(--accent);background:#5b8def26}.ctrl-ig:hover{background:#5b8def40}.text-input-row{gap:3px;display:flex}.text-input-row input{background:var(--bg-2);border:1px solid var(--border);color:var(--text);font-family:var(--mono);border-radius:4px;outline:none;flex:1;padding:5px 8px;font-size:.7rem}.text-input-row input:focus{border-color:var(--accent)}.text-input-row .ctrl-btn{flex:none;padding:5px 10px}.phone-card-profiles{border-top:1px solid var(--border);padding:6px 8px}.profile-dropdown select{background:var(--bg-2);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--mono);cursor:pointer;border-radius:4px;outline:none;padding:5px 8px;font-size:.7rem}.profile-dropdown select:focus{border-color:var(--accent)}.phone-card-log{border-top:1px solid var(--border);max-height:60px;padding:6px 8px;overflow-y:auto}.log-line{color:var(--text-dim);padding:1px 4px;font-size:.6rem}.muted{color:var(--text-dim);font-size:.65rem}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:2px}
